> Как положить результат промиса в массив по индексу в JavaScript? (JavaScript)

Уровень: senior · Роль: frontend · Категория: Технические вопросы

Компании: РСХБ

Стек: JavaScript

> Пример ответа

Для того чтобы положить результат промиса в массив по индексу, нужно дождаться разрешения промиса и затем присвоить значение. Самый простой способ - использовать async/await:

JAVASCRIPT
const arr = [];
async function setPromiseResult(index) {
const result = await somePromise; // somePromise - ваш промис
arr[index] = result;
}
setPromiseResult(0); // результат промиса будет в arr[0]

Если нужно обработать несколько промисов и сохранить их результаты по соответствующим индексам, используйте Promise.all:

JAVASCRIPT
const promises = [fetch('/api/1'), fetch('/api/2'), fetch('/api/3')];
const results = await Promise.all(promises); // массив результатов в том же порядке

Для единичного промиса без async/await - через .then():

JAVASCRIPT
const arr = [];
somePromise.then(result => {
arr[0] = result;
});

Важно: присваивание по индексу происходит после разрешения промиса, поэтому массив может быть пустым до этого момента.

> ГОТОВЫ К СЛЕДУЮЩЕМУ СОБЕСЕДОВАНИЮ?

Запустите тренировочную сессию с ИИ и получите детальную обратную связь, чтобы увереннее проходить реальные интервью