Files
frontend-docs/docs/javascript/08-promises/04-promise-api.md
2025-03-25 16:40:25 +03:00

2.0 KiB
Raw Permalink Blame History

sidebar_position
sidebar_position
4

Promise API

В классе Promise есть 6 статических методов.

  • Promise.all(promises) ожидает выполнения всех промисов и возвращает массив с результатами. Если любой из указанных промисов вернёт ошибку, то результатом работы Promise.all будет эта ошибка, результаты остальных промисов будут игнорироваться.
  • Promise.allSettled(promises) (добавлен недавно) ждёт, пока все промисы завершатся и возвращает их результаты в виде массива с объектами, у каждого объекта два свойства:
    • status: "fulfilled", если выполнен успешно или "rejected", если ошибка,
    • value результат, если успешно или reason ошибка, если нет.
  • Promise.race(promises) ожидает первый выполненный промис, который становится его результатом, остальные игнорируются.
  • Promise.any(promises) (добавлен недавно) ожидает первый успешно выполненный промис, который становится его результатом, остальные игнорируются. Если все переданные промисы отклонены, AggregateError становится ошибкой Promise.any.
  • Promise.resolve(value) возвращает успешно выполнившийся промис с результатом value.
  • Promise.reject(error) возвращает промис с ошибкой error.

Из всех перечисленных методов, самый часто используемый Promise.all.

🚀 Источник Deepseek