Встречается на собеседованиях • сегодня
Как работает Event Loop
Event Loop — это механизм, который позволяет JavaScript выполнять асинхронный код, несмотря на однопоточность. Он состоит из нескольких частей: Call Stack, Web APIs, Callback Queue и Microtask Queue.
- Call Stack — выполняет синхронный код. Если встречается асинхронная операция (например,
setTimeoutилиfetch), она передаётся в Web APIs. - Web APIs — обрабатывают асинхронные операции (таймеры, HTTP-запросы). После завершения колбэки попадают в Callback Queue (макрозадачи) или Microtask Queue (микрозадачи, например,
Promise.then). - Event Loop проверяет Call Stack. Если он пуст, сначала выполняет все микрозадачи из Microtask Queue, затем одну макрозадачу из Callback Queue.
Пример:
javascript
console.log('Start');
setTimeout(() => console.log('Timeout'), 0);
Promise.resolve().then(() => console.log('Promise'));
console.log('End');Вывод:
text
Start
End
Promise
Timeoutкак отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы
