node.js中的events.emitter.removeListener方法使用说明
更新时间:2014年12月10日 09:46:31 投稿:junjie
这篇文章主要介绍了node.js中的events.emitter.removeListener方法使用说明,本文介绍了events.emitter.removeListener的方法说明、语法、接收参数、使用实例和实现源码,需要的朋友可以参考下
方法说明:
移除指定事件的某个监听器。
语法:
复制代码 代码如下:
emitter.removeListener(event, listener)
接收参数:
event (string) 事件类型
listener (function) 已注册过的监听器
例子:
复制代码 代码如下:
var callback = function(stream) {
console.log('someone connected!');
};
server.on('connection', callback);
// ...
server.removeListener('connection', callback);
源码:
复制代码 代码如下:
// emits a 'removeListener' event iff the listener was removed
EventEmitter.prototype.removeListener = function(type, listener) {
var list, position, length, i;
if (!util.isFunction(listener))
throw TypeError('listener must be a function');
if (!this._events || !this._events[type])
return this;
list = this._events[type];
length = list.length;
position = -1;
if (list === listener ||
(util.isFunction(list.listener) && list.listener === listener)) {
delete this._events[type];
if (this._events.removeListener)
this.emit('removeListener', type, listener);
} else if (util.isObject(list)) {
for (i = length; i-- > 0;) {
if (list[i] === listener ||
(list[i].listener && list[i].listener === listener)) {
position = i;
break;
}
}
if (position < 0)
return this;
if (list.length === 1) {
list.length = 0;
delete this._events[type];
} else {
list.splice(position, 1);
}
if (this._events.removeListener)
this.emit('removeListener', type, listener);
}
return this;
};
您可能感兴趣的文章:
- node.js中的events.emitter.once方法使用说明
- 详解Node.js:events事件模块
- node.js中的events.emitter.removeAllListeners方法使用说明
- 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的使用方法实例分析
相关文章
Nodejs Express 通过log4js写日志到Logstash(ELK)
这篇文章主要介绍了Nodejs Express 通过log4js写日志到Logstash(ELK),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2018-08-08用node和express连接mysql实现登录注册的实现代码
本篇文章主要介绍了用node和express连接mysql实现登录注册的实现代码,具有一定的参考价值,有兴趣的可以了解一下2017-07-07
最新评论