Работая в 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);
работает и печатает правильные данные, я знаю, что в какой-то момент они создаются, но по какой-то причине операторы массивов отказываются их уважать, ожидают.
Что я делаю неправильно и какя могу работать с этим массивом?