node.js中的events.emitter.removeAllListeners方法使用说明
作者:bea
方法说明: 移除所有监听器,如果指定event,则将移除指定事件的所有监听器。 语法: 代码如下: emitter.removeAllListeners([event]) 接收参数: event 事件类型,支持多个 例子: 代码如下: //移除所有监听器 emitter.removeAllListeners() //移除指定event的所有监听器 emitter.removeAllListeners('data') 源码: 代码如下:
方法说明:
移除所有监听器,如果指定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;
};
有用 | 无用
移除所有监听器,如果指定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;
};
有用 | 无用
猜你喜欢
您可能感兴趣的文章:
- jQuery 和 CSS 的文本特效插件集锦
- js使用递归解析xml
- 做web开发 先学JavaScript
- 兼容主流浏览器的JS复制内容到剪贴板
- Javascript模拟加速运动与减速运动代码分享
- javascript中HTMLDOM操作详解
- javascript实现修改微信分享的标题内容等
- javascript表单验证和Window详解
- 使用百度地图api实现根据地址查询经纬度
- javascript实现倒计时N秒后网页自动跳转代码
- node.js中的buffer.Buffer.byteLength方法使用说明
- node.js中的buffer.slice方法使用说明
- node.js中的buffer.write方法使用说明
- node.js中的http.request.end方法使用说明
- node.js中的emitter.on方法使用说明
- node.js中的events.emitter.once方法使用说明
- node.js中的emitter.emit方法使用说明
- node.js中的events.emitter.removeListener方法使用说明
- node.js中的events.emitter.listeners方法使用说明