Назад к задачам
Условие задачи

Реализуйте функцию, имитирующую поведение Promise.all. Функция должна принимать массив объектов‑промисов и возвращать новый промис. Этот промис должен выполнить resolve с массивом значений, полученных от всех переданных промисов, либо выполнить reject сразу же при отказе любого из них, передавая причину первого отказа.

Пример использования:

customAll([p1, p2, p3])
  .then(results => console.log(results))
  .catch(err => console.error(err));