Реализовать Promise.allSettled
СреднееРеализуйте функцию promiseAllSettled(promises), которая работает как нативный Promise.allSettled().
Требования:
- Принимает массив промисов
- Возвращает промис с массивом результатов всех промисов
- НИКОГДА не отклоняется - всегда резолвится
- Каждый результат - объект с { status, value/reason }
- status: "fulfilled" или "rejected"
- fulfilled: { status: "fulfilled", value: результат }
- rejected: { status: "rejected", reason: ошибка }
- Пустой массив возвращает []
- НЕЛЬЗЯ использовать встроенный Promise.allSettled()
Пример:
const results = await promiseAllSettled([
Promise.resolve(1),
Promise.reject('error'),
Promise.resolve(3)
]);
// results = [
// { status: 'fulfilled', value: 1 },
// { status: 'rejected', reason: 'error' },
// { status: 'fulfilled', value: 3 }
// ]JavaScript•UTF-8
Run your code to see results.
Click the Run button above
Mobile view - please use desktop for better experience