【Node.js24.x】EventEmitter::addListener()メソッドの使い方
addListenerメソッドの使い方について、初心者にもわかりやすく解説します。
基本的な使い方
addListenerメソッドは、指定されたイベントが発生した際に実行されるリスナー関数を登録するメソッドです。Node.jsにおけるイベント駆動型プログラミングの根幹をなすEventEmitterクラスのインスタンスで使用されます。
このメソッドは、第一引数にイベントの名前(eventName)を文字列またはsymbolで、第二引数にそのイベントが発行されたときに呼び出される関数(listener)を受け取ります。例えば、あるオブジェクトが「データが準備できた」というイベントを発行したときに、そのデータを処理する関数を登録することができます。登録されたリスナー関数は、イベントが発行されるたびに指定された順番で実行されます。
addListenerメソッドは、自身を呼び出したEventEmitterインスタンスを返します。これにより、複数のaddListener呼び出しをメソッドチェーンとして記述することが可能です。また、onメソッドはaddListenerメソッドのエイリアスであり、機能的には全く同じです。
システム開発において、非同期処理やモジュール間の疎結合を実現する上で、EventEmitterとaddListenerメソッドは非常に重要な役割を果たします。ある処理の完了を待たずに次の処理を進めつつ、完了時に特定の動作を行わせる「コールバック」の仕組みをイベントベースで実装するための基本的な手段となります。初心者の方は、何かが起こったときに特定のコードを実行するというイベント駆動の考え方を理解する上で、このメソッドが非常に役立つでしょう。
構文(syntax)
1const EventEmitter = require('events'); 2const myEmitter = new EventEmitter(); 3 4myEmitter.addListener('eventName', () => {});
引数(parameters)
eventName, listener
- eventName: string: イベントの名前を指定する文字列
- listener: (...args: any[]) => void: イベント発生時に実行されるコールバック関数
戻り値(return)
EventEmitter
EventEmitterインスタンス自身が返されます。これにより、メソッドチェーンによる連続したリスナー登録が可能になります。