---
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**