Все промисы (Promise.all)

Medium
PromiseAsyncYandexTinkoff

Реализуйте функцию promiseAll(promises), которая работает так же, как Promise.all:

  • Принимает массив промисов (или значений)
  • Возвращает промис, который резолвится массивом результатов в порядке входного массива
  • Если любой из промисов реджектится — весь результат реджектится с этой ошибкой
const result = await promiseAll([
  Promise.resolve(1),
  Promise.resolve(2),
  3
]);
// => [1, 2, 3]
Подсказка

Результаты нужно записывать по индексу results[i] = val, а не через push — промисы могут завершиться не в том порядке, в котором переданы.

Подсказка

Оборачивайте каждый элемент в Promise.resolve(p) — это позволяет передавать не только промисы, но и обычные значения (числа, строки).

Ваш код - JavaScript
Результаты
Нажмите «Запуск» для выполнения кода