Назад к вопросам
Junior — Middle
85
Можете объяснить, что такое Event Emitter в Node.js и как он используется для обработки событий?
Ответ от нейросети
sobes.tech AI
Event Emitter в Node.js — это объект, который позволяет создавать и обрабатывать события. Он реализует паттерн "наблюдатель" (observer), где один объект (эмиттер) генерирует события, а другие (слушатели) на них реагируют.
Основные моменты:
- Класс
EventEmitterнаходится в модулеevents. - Можно создавать собственные эмиттеры, наследуя
EventEmitter. - Слушатели регистрируются с помощью метода
onилиaddListener. - События вызываются методом
emit.
Пример использования:
const EventEmitter = require('events');
class MyEmitter extends EventEmitter {}
const myEmitter = new MyEmitter();
// Регистрируем слушатель события 'greet'
myEmitter.on('greet', (name) => {
console.log(`Привет, ${name}!`);
});
// Генерируем событие 'greet'
myEmitter.emit('greet', 'Алексей');
В результате при вызове emit все слушатели события greet будут вызваны с переданными аргументами.
Это позволяет строить асинхронную и событийно-ориентированную архитектуру приложений в Node.js.