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

Как работает EventLoop

EventLoop — это механизм, который управляет выполнением кода, обработкой событий и колбэков в JavaScript. Он работает в однопоточном режиме, но использует очередь задач для асинхронных операций.

Принцип работы:

  1. Синхронный код выполняется сразу.
  2. Асинхронные операции (setTimeout, промисы, события) попадают в очередь задач.
  3. Когда Call Stack пуст, EventLoop берет первую задачу из очереди и выполняет ее.

Пример:

javascript
console.log('Start');

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

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

console.log('End');

Вывод:

text
Start
End
Promise
Timeout

Почему так?

  • Сначала выполняется синхронный код (Start, End).
  • Микрозадачи (промисы) имеют приоритет над макрозадачами (setTimeout).
  • EventLoop обрабатывает микрозадачи перед макрозадачами.
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы