Пытаюсь добавить словари с массив itemsElems:
const itemsElems = []
getTable().then(res => {
res.map( function(elem) {
console.log("Elem:", elem);
itemsElems.push(elem);
} )
})
console.log("ItemsElems:", itemsElems);
Вот это выводится:
ItemsElems: []
Editor.jsx:19 Elem: {id: 1, idgovernor: 1, inforegion: "!InfoRegion!", idnews: 1}
Editor.jsx:19 Elem: {id: 2, idgovernor: 2, inforegion: "!InfoRegion!", idnews: 1}
Почему список пустой? И почему он вообще первым выводится, если его вывод стоит в конце?
Выводится первым, потому, что функция getTable() возвращает promise. Поэтому JS сначала выполняет код который стоит после него. Чтобы исправить, можно подождать ответа от промиса getTable() через await. То есть:
async function fillArray() {
const itemsElems = [];
let res = await getTable();
res.map(elem => {
console.log("Elem:", elem);
itemsElems.push(elem);
});
console.log("ItemsElems:", itemsElems);
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
есть скрипт который должен ограничивать строку по кол-во символов и в конце троеточие добавлять, но добавляет только троеточие
Всех приветствую! Как сделать Ajax подгрузку, чтобы при клике по кнопке, меню загружалось, а не загружалось при загрузке сайта? Код добавил на codepen,...
Имеется приложение, на главной странице канвас с текстомВ приложении есть функционал смены языка (русский, английский)
Работа с телефонной книгойПишу серверную часть, хочу созданного пользователя изменить его данные(имя и номер), добавить, удалить, редактировать...