Node.jsイベント駆動プログラミング

クライアント側のJavaScriptでは、組み込みイベント発生時の処理を書くだけでしたが、Node.jsではイベントを定義して任意のタイミングでそれを駆動するようなプログラムが書けるようです。

具体的な手順は以下の通り。
1. イベント発生オブジェクトの生成
 ⇓
2. イベントリスナー(イベント発生時の処理関数)の作成
 ⇓
3. イベント定義(イベントにイベントリスナーを紐付ける)
 ⇓
4. イベント発生

サンプルプログラム

■event_sample.js

var events = require('events');

// 1) イベント発生オブジェクトの生成
var emitter = new events.EventEmitter();

// 2) イベントリスナーの作成
var myListener = function(args) {
    args.forEach((arg) => {
        console.log(arg);
    });
};

// リスナー関数をイベントに紐付ける
emitter.on('myevent', myListener);

// イベント発生
// 第一引数:    イベント名
// 第二引数以降:イベントリスナーに渡す引数
emitter.emit('myevent', ['Node.js', 'JavaScript', 'HTML']);

■実行結果

$ node event_sample.js
Node.js
JavaScript
HTML

僕は今、モーレツにイベントを駆動している。

[広告] Node.jsデザインパターン 第2版