Промис (Promise) — специальный объект JavaScript, который используется для написания и обработки асинхронного кода.

Асинхронные функции возвращают объект Promise в качестве значения. Внутри промиса работает асинхронная операция, которая управляет его состоянием.



Промис может находиться в одном из трёх состояний:

pending — стартовое состояние, операция стартовала;

fulfilled — получен результат;

rejected — ошибка.



Поменять состояние можно только один раз: перейти из pending либо в fulfilled, либо в rejected