Node.js 是一個(gè)基於Chrome JavaScript 執(zhí)行階段建立的平臺(tái)。
Node.js是一個(gè)事件驅(qū)動(dòng)I/O服務(wù)端JavaScript環(huán)境,基於Google的V8引擎,V8引擎執(zhí)行Javascript的速度非???,效能非常好。
Node.js EventEmitter 語(yǔ)法
Node.js 所有的非同步 I/O 操作在完成時(shí)都會(huì)傳送事件到事件佇列。
Node.js裡面的許多物件都會(huì)分發(fā)事件:一個(gè)net.Server物件會(huì)在每次有新連線時(shí)分發(fā)一個(gè)事件, 一個(gè)fs.readStream物件會(huì)在檔案被開(kāi)啟的時(shí)候發(fā)出一個(gè)事件。所有這些產(chǎn)生事件的物件都是 events.EventEmitter 的實(shí)例。
Node.js EventEmitter 範(fàn)例
//event.js 檔案
var EventEmitter = require('events').EventEmitter; var event = new EventEmitter(); event.on('some_event', function() { console.log('some_event 事件觸發(fā)'); }); setTimeout(function() { event.emit('some_event'); }, 1000);