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

Как работает метод all для Promise

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

Пример:

javascript
const promise1 = Promise.resolve(3);
const promise2 = new Promise((resolve) => setTimeout(resolve, 100, 'foo'));
const promise3 = 42; // Не промис, будет автоматически обёрнут в Promise.resolve

Promise.all([promise1, promise2, promise3])
  .then((values) => {
    console.log(values); // [3, 'foo', 42]
  })
  .catch((error) => {
    console.error(error);
  });

Особенности:

  • Сохраняет порядок результатов
  • Преобразует не-промисы в промисы
  • Немедленно отклоняется при первой ошибке (fail-fast поведение)
  • Не отменяет выполнение других промисов при ошибке
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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