> Как обрабатывать массив результатов промисов в JavaScript и выводить success или fail в консоль (JavaScript)

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

Компании: Яндекс

Стек: JavaScript

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

Для обработки массива промисов и вывода success или fail в консоль можно использовать Promise.allSettled(), который ждёт завершения всех промисов и возвращает массив объектов с их статусами.

Пример:

JAVASCRIPT
const promises = [
fetch('/api/data1'),
fetch('/api/data2'),
fetch('/api/data3')
];
Promise.allSettled(promises)
.then(results => {
results.forEach((result, index) => {
if (result.status === 'fulfilled') {
console.log(`Промис ${index + 1}: success`);
} else {
console.log(`Промис ${index + 1}: fail`);
}
});
});

Если нужно обрабатывать промисы последовательно или с учётом первого успешного/ошибочного результата, можно использовать Promise.all() (выбросит ошибку при первом reject) или Promise.any() (вернёт первый успешный). Но для вывода статуса каждого промиса Promise.allSettled() - наиболее подходящий вариант.

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

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