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

Зачем нужен EventLoop

EventLoop — это механизм, который управляет выполнением кода, обработкой событий и колбэков в асинхронной среде, например, в браузере или Node.js. Он позволяет JavaScript быть однопоточным, но при этом не блокировать выполнение операций ввода-вывода (I/O).

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

  1. Выполняется синхронный код.
  2. Асинхронные операции (setTimeout, запросы к серверу) передаются в WebAPI.
  3. Когда асинхронная операция завершается, её колбэк попадает в очередь задач (Callback Queue).
  4. EventLoop проверяет, пуст ли Call Stack (основной стек выполнения). Если да — перемещает колбэк из очереди в стек для выполнения.
javascript
console.log('Start');
setTimeout(() => console.log('Timeout'), 0);
Promise.resolve().then(() => console.log('Promise'));
console.log('End');
// Вывод: Start → End → Promise → Timeout

Особенности:

  • Микрозадачи (Promise, MutationObserver) выполняются перед макрозадачами (setTimeout, setInterval).
  • EventLoop обеспечивает неблокирующую модель работы.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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