Back to questions
Росатом
Junior — Middle
100
Можете объяснить принцип работы Event Loop в JavaScript?
Companies where asked
Answer from AI
sobes.tech AI
Event Loop в JavaScript — это механизм, который позволяет обрабатывать асинхронные операции, не блокируя основной поток выполнения.
Принцип работы:
- Вызовы функций и синхронный код выполняются сразу в стеке вызовов.
- Асинхронные операции (например, таймеры, сетевые запросы) отправляются в Web APIs (браузер) или соответствующий API в Node.js.
- Когда асинхронная операция завершается, её callback помещается в очередь задач (task queue).
- Event Loop постоянно проверяет стек вызовов: если он пуст, Event Loop берет первый callback из очереди задач и помещает его в стек для выполнения.
Таким образом, JavaScript остаётся однопоточным, но может эффективно обрабатывать асинхронные операции без блокировки.
Пример:
console.log('Начало');
setTimeout(() => {
console.log('Асинхронный вызов');
}, 0);
console.log('Конец');
// Вывод будет:
// Начало
// Конец
// Асинхронный вызов