Расскажи про Event Loop в JavaScript: из чего он состоит и в каком порядке выполняются синхронный код, микрозадачи и макрозадачи?

Синхронный код выполняется в стеке; после текущей задачи браузер обрабатывает очередь микрозадач, затем получает возможность рендеринга и выбора следующей задачи.

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

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

Синхронный код выполняется в стеке; после текущей задачи браузер обрабатывает очередь микрозадач, затем получает возможность рендеринга и выбора следующей задачи.

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

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

Синхронный код выполняется в стеке; после текущей задачи браузер обрабатывает очередь микрозадач, затем получает возможность рендеринга и выбора следующей задачи.

Promise reactions и queueMicrotask относятся к микрозадачам, setTimeout планирует задачу таймера. Микрозадачи, добавленные микрозадачами, также обрабатываются до перехода дальше, поэтому бесконечная цепочка может блокировать UI. «Макрозадача» — распространённое неформальное название; разные источники задач не образуют одну универсальную FIFO-очередь на всё.

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

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

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

Подробнее