Встречается на собеседованиях • сегодня

В какой момент callback из setTimeout попадает в Event Loop

Callback из setTimeout попадает в Event Loop после истечения указанного времени таймера и когда Call Stack пуст. Таймер запускается при вызове setTimeout, но callback не выполняется сразу — он ждёт в Web APIs (или аналогичном окружении), пока таймер не завершится. Затем callback перемещается в очередь задач (Task Queue), откуда Event Loop переносит его в Call Stack для выполнения, если последний свободен.

Пример:

javascript
console.log('Start');
setTimeout(() => console.log('Timeout'), 0);
console.log('End');

Вывод:

text
Start
End
Timeout

Даже при таймере 0, callback ждёт завершения синхронного кода и очистки Call Stack.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы