node.js中的events.emitter.removeAllListeners方法使用说明
投稿:junjie
这篇文章主要介绍了node.js中的events.emitter.removeAllListeners方法使用说明,本文介绍了events.emitter.removeAllListeners 的方法说明、语法、接收参数、使用实例和实现源码,需要的朋友可以参考下
方法说明:
移除所有监听器,如果指定event,则将移除指定事件的所有监听器。
语法:
复制代码 代码如下:
emitter.removeAllListeners([event])
接收参数:
event 事件类型,支持多个
例子:
复制代码 代码如下:
//移除所有监听器
emitter.removeAllListeners()
//移除指定event的所有监听器
emitter.removeAllListeners('data')
源码:
复制代码 代码如下:
EventEmitter.prototype.removeAllListeners = function(type) {
var key, listeners;
if (!this._events)
return this;
// not listening for removeListener, no need to emit
if (!this._events.removeListener) {
if (arguments.length === 0)
this._events = {};
else if (this._events[type])
delete this._events[type];
return this;
}
// emit removeListener for all listeners on all events
if (arguments.length === 0) {
for (key in this._events) {
if (key === 'removeListener') continue;
this.removeAllListeners(key);
}
this.removeAllListeners('removeListener');
this._events = {};
return this;
}
listeners = this._events[type];
if (util.isFunction(listeners)) {
this.removeListener(type, listeners);
} else {
// LIFO order
while (listeners.length)
this.removeListener(type, listeners[listeners.length - 1]);
}
delete this._events[type];
return this;
};
您可能感兴趣的文章:
- node.js中的events.emitter.once方法使用说明
- 详解Node.js:events事件模块
- node.js中的events.emitter.removeListener方法使用说明
- node.js中的events.EventEmitter.listenerCount方法使用说明
- 关于Node.js的events.EventEmitter用法介绍
- node.js中的events.emitter.listeners方法使用说明
- node.js学习之事件模块Events的使用示例
- 详解如何模拟实现node中的Events模块(通俗易懂版)
- nodejs事件的监听与触发的理解分析
- Node.js中的事件驱动编程详解
- Nodejs中自定义事件实例
- node.js中事件触发器events的使用方法实例分析