• Как изменять инфу на сайте?

    @FlyMoBiS Автор вопроса
    Михаил Ливач, спасибо но II не использую так как js иногда ведет себя не так как языки которые я использовал до этого и 0 || 1 он выберет 1 (а я хочу просто чтобы он не выбрал undefined/null) подумал что он может захотеть выбрать более длиную строку
    касательно всего остального спасибо за некоторые правки но я хотел поулить ответ на то будет ли в браузере сайт использовать кучу памяти и надо ли мне оптимизировать самому это все или браузер сам управляет паматью
    и про devtools спасибо потестирую надеюсь ничего делать не надо
    Написано
  • Как ставить картинку не ссылкой а файлом(данными..хз)?

    @FlyMoBiS Автор вопроса
    VoidVolker, думаю 2 вопрос достаточно связан с первым
    Написано
  • Как изменять инфу на сайте?

    @FlyMoBiS Автор вопроса
    спасибо за это информацию я использую это в дальнейшей разработке (кешь/кешь контрол)
    и извиняюсь за неправильное представление проблемы


    - время провождение на сайте без его перезагрузки в дальнейшем "сеанс"

    крч вот можете подсказать? мне ведь надо что то изменить при изменении ссылки на картинки а то мне кажется что если заполнить 1000 раз таким образом если браузер не оптимизирует все сам то сеанс сайта может занимать сотни м-байт

    ___
    ...
    <b>// изменяет ссылку на картинку и ссылку* ссылки*
    // image.src ='...' n a.href = '...'</b>
    const fillItem = async (itemData, element) => {
        if (typeof element != 'object') { return; };
        if (typeof itemData != 'object') { return; };
        if (typeof itemData.posters == 'object') {
            let posterURL = './frontend/images/notFound.png';
            if (typeof itemData.posters.original.url === 'string') { posterURL = itemData.posters.original.url }
            else if (typeof itemData.posters.medium.url === 'string') { posterURL = itemData.posters.medium.url };
            element.getElementsByTagName('img')[0].src = storageHOST + posterURL;
        };
        if (typeof itemData.names === 'string') {
            let name= '';
            if (typeof itemData.names.ru === 'string') { name= itemData.names.ru }
            else if (typeof itemData.names.alternative === 'string') { name= itemData.names.alternative }
            else if (typeof itemData.names.en === 'string') { name= itemData.names.en }
            if (name.length > 33) { name= nameAnime.slice(0, 30) + '...' };
            element.getElementsByTagName('p')[0].textContent = name;
        };
        element.getElementsByTagName('a')[0].href = '/player?id=' + itemData.id;
    };
    <b>// изменяет количество элементов</b>
    const changeItems = (itemsData) => {
        if (typeof itemsData != 'object') { return; };
        for (let i = 0; i < itemsData.length; i += 1) {
            fillItem(itemsData[i], allItems[i]);
        };
        deleteItems(allItems.length - itemsData.length);
        itemsData.splice(0, allItems.length);
        if (itemsData.length < 1) { return; };
        createItems(itemsData);
    };
    
    function changePage() {
        if (typeof currentPage === 'string') { currentPage = Number.parseInt(currentPage); };
        if (typeof currentPage !== 'number') { currentPage = 1; };
        if (typeof search === 'string') {
            req = Api.getSearch(search, currentPage, itemsInPage);
        } else {
            req = Api.getUpdates(currentPage, itemsInPage);
        };
        req.then((res) => {
            res = JSON.parse(res);
            maxPages = res.pagination.pages;
            changeItems(res.list);
        }, (err) => {
            console.log('f', err);
        });
    };


    changePage() может вызываться неограничено число раз за один сеанс, все будет норм или нет?
    Написано
  • Почему then cрабатывает после того как Promise.resolve был вызван?

    @FlyMoBiS Автор вопроса
    WbICHA, с последним согласен не очень понятно выразился
    Написано
  • Почему then cрабатывает после того как Promise.resolve был вызван?

    @FlyMoBiS Автор вопроса
    WbICHA, в промисе есть две функции при вызове первого аргумента в промисе должна срабатывать первая функция подключеная к промису? или как оно там работает.
    ЧТО после вызова resolve в промисе когда функция(then) не вызвана, после того как она вызывается все работает ХОТЯ промис уже по идеи вызвал функцию а ее НЕБЫЛО,
    или он вызывает евент который ждет появления каллбека и потом уже его вызывает?
    Написано
  • Почему then cрабатывает после того как Promise.resolve был вызван?

    @FlyMoBiS Автор вопроса
    Lynn «Кофеман», хочу получить ответ почему работает код в этой публикации
    Написано