Встречается на собеседованиях • сегодня

Что будет если в Promise.all один Promise выдаст ошибку

Если в Promise.all хотя бы один промис завершится с ошибкой (rejected), весь Promise.all немедленно завершится с этой ошибкой, игнорируя остальные промисы (даже если они успешны).

Пример:

javascript
const p1 = Promise.resolve('Успех');
const p2 = Promise.reject('Ошибка');
const p3 = new Promise((resolve) => setTimeout(resolve, 100, 'Поздний успех'));

Promise.all([p1, p2, p3])
  .then(console.log) // Не выполнится
  .catch(console.error); // Выведет 'Ошибка'

Альтернатива: Promise.allSettled — дожидается всех промисов, возвращая массив с их статусами.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы