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

В чем разница между методами Promise.race и Promise.any

Promise.race и Promise.any работают с массивом промисов, но ведут себя по-разному:

  1. Promise.race
    Возвращает первый успешно выполненный или отклоненный промис.
    Пример:
    javascript
    Promise.race([
      Promise.reject('Error'),
      Promise.resolve('Success')
    ]).catch(console.log); // 'Error'
  1. Promise.any (ES2021)
    Возвращает первый успешно выполненный промис. Если все отклонены — возвращает AggregateError.
    Пример:
    javascript
    Promise.any([
      Promise.reject('Error1'),
      Promise.resolve('Success')
    ]).then(console.log); // 'Success'

Ключевое отличие: race реагирует на первый завершенный промис (успех/ошибка), а any — только на первый успешный. Если все промисы отклонены — race вернет первую ошибку, а anyAggregateError.

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

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

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

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