Node.js Events 模块
实例
为一个名为 "scream" 的事件创建一个事件监听,然后触发该事件:
var events = require('events');var eventEmitter = new events.EventEmitter();eventEmitter.on('scream', function() {console.log('A scream is detected!');});eventEmitter.emit('scream');
定义与用法
Events 模块提供了处理事件的方法。
在 Node.js 中, 所有事件都是 EventEmitter 对象的实例。
语法
用于在应用程序中引用 Events 模块和创建 EventEmitter 的语法:
var events = require('events');var eventEmitter = new events.EventEmitter();
EventEmitter 属性与方法
| 方法 | 描述 |
|---|---|
| addListener() | 添加指定监听 |
| defaultMaxListeners | 设置一个事件允许的最大监听数。默认值为 10 |
| emit() | 调用使用指定名称注册的所有监听 |
| eventNames() | 返回包含所有已注册事件的数组 |
| getMaxListeners() | 返回一个事件允许的最大监听数 |
| listenerCount() | 返回具有指定名称的监听数 |
| listeners() | 返回具有指定名称的监听数组 |
| on() | 添加指定的监听 |
| once() | 添加指定的监听一次。执行指定的监听后,将删除该监听 |
| prependListener() | 将指定的监听添加为具有指定名称的第一个事件 |
| prependOnceListener() | 将指定的监听添加一次,作为具有指定名称的第一个事件。执行指定的监听后,将删除该监听 |
| removeAllListeners() | 删除具有指定名称的所有监听,如果未指定名称,则删除所有监听 |
| removeListener() | 删除具有指定名称的指定监听 |
| setMaxListeners() | 设置一个事件允许的最大监听数。默认为 10 |