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

Как макротаски попадают в очередь

Макротаски (например, setTimeout, setInterval, setImmediate, I/O операции, UI рендеринг) попадают в очередь макротаск Event Loop после выполнения текущего стека вызовов и микротаск.

Порядок обработки:

  1. Выполняется весь синхронный код (стек вызовов).
  2. Затем выполняются все микротаски (например, Promise.then, queueMicrotask).
  3. После этого Event Loop берет первую макротаску из очереди и выполняет её.

Пример:

javascript
console.log('Start');

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

Promise.resolve().then(() => console.log('Promise'));

console.log('End');

Вывод:

text
Start  
End  
Promise  
Timeout  

setTimeout — макротаска, выполняется после микротаски (Promise).

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

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

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

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