2015/03/16

node.js 初探 event

先來看看下列程式 event.js

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
// event.js

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

setTimeout(function() {
 event.emit('event1');
}, 1000);

setTimeout(function() {
 event.emit('event2');
}, 2000);

event.on('event1', function() {
 console.log('1');
});

Line 3~4 建立一個新的 event
Line 6~8 對 event 設定一個 timeout 計時器,等待 1000 ms 之後觸發 'event1'
Line 10~12 對 event 設定一個 timeout 計時器,等待 2000 ms 之後觸發 'event2'
Line 14~16 當 event 的 'event1' 被觸發的時候,顯示 '1'

執行 node event.js ,一秒後因為觸發 event1 而顯示 1,兩秒後 'event2' 被觸發,但是沒有告訴 node.js 當 event2 觸發時要作什麼,所以沒事作。然後因為事件佇列沒有其他事件待處理而結束程式。

沒有留言: