NodeJS(一) 事件驱动编程

Node.js使用大量事件,这也是为什么Node.js相对于其他类似技术比较快的原因之一。当Node启动其服务器,就可以简单地初始化其变量,声明函数,然后等待事件的发生。

虽然事件似乎类似于回调。不同之处在于当回调函数被调用异步函数返回结果,其中的事件处理工作在观察者模式。监听事件函数作为观察者。每当一个事件被解雇,其监听函数开始执行。Node.js有多个内置的事件。 主要扮演者是 EventEmitter,可使用以下语法导入。

var events = require('events');//添加事件模块的引用
//create an eventEmitter object创建事件发射器对象
var eventEmitter = new events.EventEmitter();

//create a function connected which is to be executed 
//when 'connection' event occurs
//创建一个连接的要执行的函数
//“connection”事件发生时
var connected = function connected() {
   console.log('connection succesful.');
   // fire the data_received event 启动数据接收事件
   eventEmitter.emit('data_received');
}

// bind the connection event with the connected function将连接事件与连接的函数绑定
eventEmitter.on('connection', connected);
 
// bind the data_received event with the anonymous function
eventEmitter.on('data_received', function(){
   console.log('data received succesfully.');
});

// fire the connection event 
eventEmitter.emit('connection');

console.log("Program Ended.");// 

 

eventEmitter.on('connection', connected);将连接事件connection与 connected函数绑定,当执行eventEmitter.emit('connection');的时候触发事件执行与之对应的函数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值