Почему не передаётся перменная в 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 выше не передавалось значение. Еще раз проверил и всё заработало.

→ Ссылка