Sobes.tech
Back to questions
Middle
3

Можно ли внутри then обработать состояние rejected промиса? В чём разница между обработкой reject во втором колбеке then и в catch?

Companies where asked
Лига Цифровой ЭкономикиЛига Цифровой Экономики

Answer from AI

sobes.tech AI

Да, внутри then можно обработать состояние rejected, передав второй колбек в then:

promise.then(
  result => { /* обработка успешного результата */ },
  error => { /* обработка ошибки */ }
);

Разница между обработкой reject во втором колбеке then и в catch:

  • Второй колбек then обрабатывает только ошибку, возникшую в исходном промисе.
  • catch ловит ошибки, возникшие как в исходном промисе, так и в любом предыдущем then, если они не были обработаны.

Таким образом, catch удобнее для централизованной обработки ошибок, а второй колбек then — для локальной обработки ошибок конкретного промиса.