В чём разница между Promise.all и Promise.race?
Уровень: Middle
Ответ
`Promise.all` ожидает выполнения всех промисов и возвращает промис с массивом результатов (или ошибкой, если хоть один промис отклонён). `Promise.race` же возвращает промис, который завершается или отклоняется сразу как только первый из переданных промисов выполнится или выбросит ошибку. То есть race «соревнуется» – чей результат будет первым, тот и возвращается. Например, Promise.race можно использовать, чтобы установить тайм-аут: запустить основной промис и промис-обёртку для тайм-аута – чей быстрее, тот и отработает.