Как работать с массивом, содержащим обещания в javascript? - PullRequest
0 голосов
/ 19 апреля 2019

Работая в NodeJS, у меня есть функция, которая возвращает массив объектов.Внутри этих объектов многие поля заполнены ожидаемыми обещаниями, возвращенными из API.Однако по какой-то причине это означает, что я вообще не могу работать в массиве.Например:

У меня есть функция для извлечения из API,

export async function someFunction(){
  let item = `--API URL HERE--`
  let res = await fetch(item);
  let data = await res.json();
  return data;
}

в другой асинхронной функции, я использую эти данные для построения массива объектов, некоторые из полей этогообъект заполняется информацией из этого API, вызывается с помощью ожидаемой функции, такой как:

let field = await exportedFile.someFunction();

Как только у меня будет построен этот массив объектов, я могу зарегистрировать его с помощью console.log(array); и увидеть полностью заполненный массив.Однако console.log(array[1]); возвращает неопределенное значение, как и console.log(await array[1]); в дальнейшем, попытка оператора распространения выгрузить его в другой массив возвращает пустой массив, а попытка его преобразования в строку приводит к [].Поскольку console.log(array); работает и печатает правильные данные, я знаю, что в какой-то момент они создаются, но по какой-то причине операторы массивов отказываются их уважать, ожидают.

Что я делаю неправильно и какя могу работать с этим массивом?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...