Вопрос проверяет понимание роли браузерных API в асинхронном выполнении JavaScript.
Web APIs позволяют браузеру выполнять асинхронные операции вне основного потока JavaScript. Таймеры, сетевые запросы и события обрабатываются браузером, а не движком JavaScript. После завершения операции колбэк помещается в соответствующую очередь задач. Event loop затем решает, когда выполнить этот код.
JavaScript-движок сам по себе не умеет выполнять асинхронные операции.
Web APIs — это интерфейсы браузера, предоставляющие возможности, недоступные чистому JavaScript.
setTimeout
fetch
DOM Events
WebSocket
Асинхронная операция передаётся в Web API
JavaScript продолжает выполнение синхронного кода
После завершения операции колбэк попадает в очередь задач
Event loop добавляет его в call stack
setTimeout(() => {
console.log("Готово");
}, 1000);
Таймер обрабатывается Web API, а функция будет выполнена позже через event loop.
Web APIs расширяют возможности JavaScript и позволяют реализовывать асинхронное поведение без блокировки основного потока.