Sobes.tech
Middle

Կպատմեք Promise-ի մասին. վիճակներ, ստատիկ մեթոդներ (all, any, allSettled, race): ինչ կվերադարձնի Promise.all-ը, եթե մեկը խոստումներից ավարտվի սխալով։

sobes.tech AI

Պատասխան AI-ից

Promise — это объект, представляющий результат асинхронной операции. У него есть три состояния:

  • pending (ожидание)
  • fulfilled (выполнено успешно)
  • rejected (отклонено с ошибкой)

Статические методы:

  • Promise.all(iterable) — ждёт выполнения всех промисов. Если все успешны, возвращает массив результатов. Если хотя бы один отклонён, возвращает ошибку первого отклонённого промиса.
  • Promise.any(iterable) — ждёт первого успешно выполненного промиса. Если все отклонены, возвращает AggregateError.
  • Promise.allSettled(iterable) — ждёт завершения всех промисов, возвращает массив объектов с результатами и статусами, независимо от успеха или ошибки.
  • Promise.race(iterable) — возвращает результат первого завершившегося промиса, будь то успех или ошибка.

Если один из промисов в Promise.all завершится с ошибкой, весь Promise.all сразу же отклонится с этой ошибкой, и дальнейшие результаты игнорируются.