Promise.some - N успешных из M
СложнаяРеализуйте promiseSome(promises, count) - резолвится когда N промисов завершились успешно.
Отличия от других Promise методов:
- Promise.all - нужны ВСЕ успешные
- Promise.race - нужен первый (любой)
- Promise.any - нужен первый успешный
- Promise.some - нужно N успешных из M
Требования:
- Принимает массив промисов и число count
- Резолвится когда count промисов выполнились успешно
- Реджектится если слишком много промисов упали (невозможно набрать count успешных)
- Возвращает массив успешных результатов
Пример:
// Отправляем запросы к 5 API, нужно минимум 3 успешных
const results = await promiseSome([
fetch('api1.com'),
fetch('api2.com'), // упал
fetch('api3.com'),
fetch('api4.com'),
fetch('api5.com') // упал
], 3);
// Резолвится с [response1, response3, response4]JavaScript•UTF-8
Run your code to see results.
Click the Run button above
Mobile view - please use desktop for better experience