Node.js 事件

章节


Node.js非常适合事件驱动的应用程序。

Node.js中的事件

计算机上的每一个动作都是一个事件,例如:打开文件,访问网址。

Node.js中的对象可以触发事件,例如readStream对象在打开和关闭文件时会触发事件:

示例

var fs = require('fs');
var rs = fs.createReadStream('./demofile.txt');
rs.on('open', function () {
  console.log('The file is open');
});

事件模块

Node.js有一个内置模块Events,可用于创建、触发和侦听事件。

使用require()方法,导入Events模块。

var events = require('events');

EventEmitter对象

EventEmitter对象是处理事件的主要对象。例如,可以使用EventEmitter对象,为事件分配事件处理程序。

在下面的例子中,我们创建了一个函数,它将在“scream”事件触发时执行。

要触发事件,使用emit()方法。

示例

var events = require('events');
var eventEmitter = new events.EventEmitter();

//创建一个事件处理程序:
var myEventHandler = function () {
  console.log('I hear a scream!');
}

//将事件处理程序分配给事件:
eventEmitter.on('scream', myEventHandler);

//触发“scream”事件:
eventEmitter.emit('scream');

猜你喜欢

转载自www.cnblogs.com/jinbuqi/p/11546935.html