Почему не передаётся перменная в async функцию?
Есть код
function sleep(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
}
async function myfunc() {
fin_poluchateli_arr = [{
id: 1,
name: '111',
surname: '111'
}, {
id: 2,
name: '222',
surname: '222'
}, {
id: 3,
name: '333',
surname: '333'
}];
var length_arr = 10;
var step = 0;
for (const poluchatel of fin_poluchateli_arr) {
await (async function() {
console.log('Цикл:' + poluchatel['id'] + ',' + length_arr); //Здесь пременная length_arr = undefined
await sleep(1000);
})();
}
}
myfunc();
Не хочу выносить фунцию куда то за пределы. Хочу чтобы всё на виду было.
Нужно передать переменную в функцию await async, чтобы в консоли выводилось значение length_arr
await async function(length_arr)
не помогает.
Ответы (1 шт):
Автор решения: Константин Постоянный
→ Ссылка
Разобрался. Всё написано верно. Переменной length_arr выше не передавалось значение. Еще раз проверил и всё заработало.