Back to questions
ОТП Банк
Middle
2
Определите порядок вывода цифр в консоли для примера с Promise, где вызывается reject, а затем навешиваются обработчики then, catch, finally.
Companies where asked
Answer from AI
sobes.tech AI
Если Promise сразу вызывается с reject, а затем навешиваются обработчики then, catch, finally, порядок вывода будет следующим:
const p = new Promise((resolve, reject) => {
reject('Ошибка');
});
p.then(() => console.log('then'))
.catch(() => console.log('catch'))
.finally(() => console.log('finally'));
В консоли выведется:
catch
finally
Объяснение:
- При вызове reject промис переходит в состояние rejected.
- then с первым аргументом для успешного результата пропускается.
- catch срабатывает и выводит 'catch'.
- finally срабатывает всегда, независимо от результата, и выводит 'finally'.
Обработчики then/catch/finally вызываются асинхронно после текущего стека, поэтому они сработают в порядке очереди микротасков.