Middle
49
questionbank

Как работает Promise в JavaScript?

Получайте ответы на вопросы в реальном времени с Sobes Copilot
Ответ от нейросети sobes.tech
  • Объект, представляющий возможное конечное завершение (или сбой) асинхронной операции и ее результирующее значение.
  • Состояния промиса:
    • pending: начальное состояние, ни выполнен, ни отклонен.
    • fulfilled: означает, что операция успешно завершена.
    • rejected: означает, что операция завершилась ошибкой.
  • Переход из состояния pending в fulfilled или rejected происходит однократно и необратимо.
  • Методы:
    • .then(onFulfilled, onRejected): Принимает две функции обратного вызова. Первая (onFulfilled) вызывается при успешном завершении, вторая (onRejected) - при ошибке. Оба аргумента опциональны. Возвращает новый промис.
    • .catch(onRejected): Сокращенная запись .then(null, onRejected). Предназначен для обработки ошибок. Возвращает новый промис.
    • .finally(onFinally): Вызывается независимо от результата промиса (успех или ошибка). Полезен для очистки ресурсов. Возвращает новый промис.
  • Создание промиса:
javascript
  • Цепочки промисов: .then(), .catch(), .finally() возвращают промисы, что позволяет создавать цепочки для последовательного выполнения асинхронных операций.
javascript