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

Как работает асинхронное программирование в JS

В JavaScript асинхронное программирование работает через механизм событийного цикла (event loop). Код выполняется в одном потоке, но операции ввода-вывода, таймеры и другие асинхронные задачи делегируются окружению (браузер/Node.js). Когда асинхронная операция завершается, её колбек попадает в очередь задач и выполняется, когда стек вызовов пуст.

Пример с setTimeout:

js
console.log('Start');
setTimeout(() => console.log('Timeout'), 0);
console.log('End');
// Output: Start, End, Timeout

Современные подходы:

  • Промисы (Promises)
  • async/await (синтаксический сахар над промисами)

Пример с async/await:

js
async function fetchData() {
  const response = await fetch('url');
  const data = await response.json();
  return data;
}

Event loop гарантирует неблокирующее выполнение кода, обрабатывая задачи в порядке: стек вызовов → микрозадачи (промисы) → макрозадачи (setTimeout, события).

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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