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

Попадает ли callback из setTimeout в Event Loop во время объявления

Callback из setTimeout не попадает в Event Loop сразу при объявлении. Вместо этого:

  1. При вызове setTimeout таймер регистрируется в Web API браузера
  2. Только после истечения указанного времени колбэк помещается в очередь Callback Queue
  3. Event Loop переносит колбэк в Call Stack только когда он пуст

Пример:

javascript
console.log('Start');
setTimeout(() => console.log('Timeout'), 0);
console.log('End');
// Вывод: Start, End, Timeout

Даже с нулевой задержкой колбэк выполнится после всего синхронного кода, так как сначала попадает в очередь.

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

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

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

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