JavaScript выполняет текущую задачу до завершения, затем обрабатывает microtasks в контрольных точках; таймеры и события ставят отдельные задачи.
Расскажи про Event Loop в JavaScript: как он работает, что такое микротаски и макротаски?
JavaScript выполняет текущую задачу до завершения, затем обрабатывает microtasks в контрольных точках; таймеры и события ставят отдельные задачи.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
JavaScript выполняет текущую задачу до завершения, затем обрабатывает microtasks в контрольных точках; таймеры и события ставят отдельные задачи.
Promise.then не выполняется прямо во время регистрации, а попадает в microtask-очередь после разрешения Promise. setTimeout задаёт минимальную задержку, не точный момент запуска. Между задачами браузер может обновлять экран; тяжёлый синхронный код или бесконечные microtasks мешают этому.