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

JS однопоточный или многопоточный

JavaScript — однопоточный язык. Он использует модель событийного цикла (event loop) для асинхронных операций, но выполняет код в одном потоке. Это значит, что в один момент времени может выполняться только одна операция.

Однако, с помощью Web Workers можно создавать дополнительные потоки для выполнения тяжелых вычислений без блокировки основного потока. Они работают в отдельных контекстах и общаются с основным потоком через сообщения.

Пример Web Worker:

js
// main.js
const worker = new Worker('worker.js');
worker.postMessage('start');
worker.onmessage = (e) => console.log(e.data);

// worker.js
onmessage = (e) => {
  const result = heavyCalculation(); // Тяжелые вычисления
  postMessage(result);
};
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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