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

Какие знаешь способы управления асинхронными операциями

В Node.js есть несколько подходов для работы с асинхронностью:

  1. Callback - базовый способ, но приводит к "callback hell":
js
fs.readFile('file.txt', (err, data) => {
  if (err) throw err;
  console.log(data);
});
  1. Promises - более читаемая альтернатива:
js
fs.promises.readFile('file.txt')
  .then(data => console.log(data))
  .catch(err => console.error(err));
  1. Async/Await - синтаксический сахар над промисами:
js
async function readFile() {
  try {
    const data = await fs.promises.readFile('file.txt');
    console.log(data);
  } catch (err) {
    console.error(err);
  }
}
  1. Event Emitters - для событийно-ориентированного подхода:
js
const emitter = new EventEmitter();
emitter.on('event', data => console.log(data));
emitter.emit('event', 'some data');
  1. Streams - для обработки данных по частям:
js
const stream = fs.createReadStream('file.txt');
stream.on('data', chunk => console.log(chunk));

Для сложных сценариев можно комбинировать подходы, например async/await со стримами.

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

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

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

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