Sobes.tech
Middle

Nosakiet skaitļu izvades kārtību konsolē piemēram ar Promise, kur tiek izsaukts reject un pēc tam pievienoti then, catch, finally apstrādātāji.

sobes.tech AI

Atbilde no 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 вызываются асинхронно после текущего стека, поэтому они сработают в порядке очереди микротасков.