前端开发

 首页 > 前端开发 > nodejs > node.js中的events.emitter.removeListener方法使用说明

node.js中的events.emitter.removeListener方法使用说明

分享到:
【字体:
导读:
          这篇文章主要介绍了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;
};
 
分享到:
node.js中的events.emitter.once方法使用...
这篇文章主要介绍了node.js中的events.emitter.once方法使用说明,本文介绍了events.emitter.once的方法说明、语法、接收参数、使用实例和实现源码,需要的朋友可以参考下 方法说明: 为指定事件注册一个 单次 监听器,所以监听器至多只会触发一次,触发后立即解除该监听器。 语法:   复制代码代码如下: ...
node.js中的events.emitter.listeners方...
这篇文章主要介绍了node.js中的events.emitter.listeners方法使用说明,本文介绍了events.emitter.listeners 的方法说明、语法、接收参数、使用实例和实现源码,需要的朋友可以参考下 方法说明: 注册了指定event的所有监听器将被作为数组返回。 语法:   复制代码代码如下: emitter.listeners(eve...
  •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
  • 在这里……