JavaScript: уровень 5
Вопрос 1 из 20
Как устроен event loop в JavaScript и в чём разница между microtask и macrotask очередями?
Ответ
После каждой задачи из основного стека сначала полностью опустошается очередь микрозадач (промисы, queueMicrotask), и только потом берётся следующая макрозадача (setTimeout, события). Поэтому Promise.resolve().then(...) выполнится раньше, чем setTimeout(..., 0).