国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

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

2019-11-20 13:46:05
字體:
來源:轉載
供稿:網友

方法說明:

移除指定事件的某個監聽器。

語法:

復制代碼 代碼如下:

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;
};

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 固镇县| 鹤壁市| 曲沃县| 金坛市| 富阳市| 安顺市| 沂南县| 宿迁市| 同心县| 驻马店市| 昭苏县| 遵义市| 右玉县| 叙永县| 永寿县| 修水县| 江华| 康乐县| 邳州市| 绥宁县| 新和县| 虎林市| 夏邑县| 平塘县| 潞西市| 永宁县| 北海市| 富顺县| 桂阳县| 广州市| 永登县| 增城市| 龙海市| 兴安盟| 永德县| 东光县| 交城县| 永寿县| 平江县| 亳州市| 西城区|