面试题答案
一键面试- 引入
events
模块: 在 Node.js 中,EventEmitter
是events
模块的核心类,使用前需要引入该模块。
const EventEmitter = require('events');
- 创建
EventEmitter
实例: 通过EventEmitter
类创建一个自定义事件发射器实例。
const myEmitter = new EventEmitter();
- 定义自定义事件:
在 Node.js 中,你无需提前声明事件,只需在需要触发事件的地方使用
emit
方法触发事件即可。 - 为自定义事件添加监听器:
使用
on
或addListener
方法为自定义事件添加监听器。
myEmitter.on('customEvent', function(data) {
console.log('监听到 customEvent 事件,接收到的数据:', data);
});
- 触发自定义事件:
使用
emit
方法触发自定义事件,并可以传递参数给监听器。
myEmitter.emit('customEvent', '这是传递的数据');
完整代码示例如下:
const EventEmitter = require('events');
const myEmitter = new EventEmitter();
myEmitter.on('customEvent', function(data) {
console.log('监听到 customEvent 事件,接收到的数据:', data);
});
myEmitter.emit('customEvent', '这是传递的数据');