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

В чем разница между серверной частью и браузером при работе с асинхронностью

Серверная часть (Node.js) использует event loop на базе libuv, который работает в одном потоке, но может делегировать I/O-операции в системные потоки. Браузеры также используют event loop, но с дополнительными API (Web Workers, Service Workers) и ограничениями (например, нет доступа к файловой системе).

Пример в браузере:

javascript
fetch('/api/data')
  .then(response => response.json())
  .then(data => console.log(data));

Пример в Node.js:

javascript
const fs = require('fs');
fs.readFile('file.txt', 'utf8', (err, data) => {
  if (err) throw err;
  console.log(data);
});

Ключевые различия:

  1. API: браузер - Fetch API, Node.js - модули типа fs, http
  2. Потоки: Node.js может использовать worker threads, браузер - Web Workers
  3. Ограничения: браузер не имеет прямого доступа к системным ресурсам
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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