ホームページ >ウェブフロントエンド >jsチュートリアル >node.js_node.js の events.emitter.removeAllListeners メソッドの使用手順

node.js_node.js の events.emitter.removeAllListeners メソッドの使用手順

WBOY
WBOYオリジナル
2016-05-16 16:27:422282ブラウズ

メソッドの説明:

すべてのリスナーを削除します。event が指定されている場合、指定されたイベントのすべてのリスナーが削除されます。

文法:

コードをコピーします コードは次のとおりです:

エミッター.removeAllListeners([イベント])

パラメータを受信します:

event イベント タイプ、複数の

をサポート

例:

コードをコピーします コードは次のとおりです:

//すべてのリスナーを削除します

エミッター.removeAllListeners()

//指定されたイベントのすべてのリスナーを削除します

emitter.removeAllListeners('data')

ソースコード:

コードをコピーします コードは次のとおりです:

EventEmitter.prototype.removeAllListeners = function(type) {
var キー、リスナー;
if (!this._events)
これを返してください;
//removeListener をリッスンしないため、発行する必要はありません
if (!this._events.removeListener) {
If (arguments.length === 0)
This._events = {};
else if (this._events[type])
this._events[type];
を削除します これを返してください;
}
// すべてのイベントのすべてのリスナーに対して、removeListener を発行します
if (arguments.length === 0) {
for (this._events にキーを入力) {
If (key === 'removeListener') 続行;
This.removeAllListeners(key);
}
This.removeAllListeners('removeListener');
This._events = {};
これを返してください;
}
リスナー = this._events[タイプ];
if (util.isFunction(listeners)) {
This.removeListener(type, リスナー);
} else {
// LIFO注文
while (listeners.length)
This.removeListener(type,listeners[listeners.length - 1]);
}
this._events[type];
を削除します これを返します;
};
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。