来源:未知 时间:2014-12-14 20:51 作者:xxadmin 阅读:次
[导读] 这篇文章主要介绍了node.js中的events.emitter.removeListener方法使用说明,本文介绍了events.emitter.removeListener的方法说明、语法、接收参数、使用实例和实现源码,需要的朋友可以参考下 方法说...
这篇文章主要介绍了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; }; |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com