Что будет выведено в консоль (пример 70)

Консоль выведет сначала f, затем abd. Первый catch обрабатывает ошибку и возвращает обычную строку, переводя цепочку в успешное состояние.

Короткий ответ

Что ответить на собеседовании

Консоль выведет сначала f, затем abd. Первый catch обрабатывает ошибку и возвращает обычную строку, переводя цепочку в успешное состояние.

Подробный разбор

Ответ с пояснениями

Условие

Определите, какой результат появится в консоли после выполнения следующего кода JavaScript.

Promise.reject("a")
  .catch((p) => p + "b")
  .catch((p) => p + "c")
  .then((p) => p + "d")
  .then((p) => console.log(p));

console.log("f");

Ответ

Консоль выведет сначала f, затем abd. Первый catch обрабатывает ошибку и возвращает обычную строку, переводя цепочку в успешное состояние.

Из 'a' получается 'ab'. Следующий catch пропускается, потому что нового отклонения нет. Then добавляет 'd', а последний then печатает результат. F выводится синхронно до обработчиков Promise.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее