事件由对象EventEmitter提供:
新建event.js
//导出公共模块
var EventEmitter = require('events').EventEmitter;
//实例化 "EventEmitter" 这个对象
var event = new EventEmitter();
//注册一个事件监听器
event.on('some_event', function() {
console.log('some_event occured.');
});
//每间隔一秒调用事件
setTimeout(function() {
event.emit('some_event');
}, 1000);
运行这段代码,1秒后控制台输出了 some_event occured.。
其原理是 event 对象注册了事件 some_event 的一个监听器,然后我们通过 setTimeout 在1000毫秒以后向event 对象发送事件 some_event,此时会调用 some_event 的监听器。