Methodenbeschreibung:
Entfernen Sie einen Listener für das angegebene Ereignis.
Grammatik:
emitter.removeListener(event, listener)
Empfangsparameter:
Ereignis (Zeichenfolge) Ereignistyp
Listener (Funktion) Registrierter Listener
Beispiel:
var callback = function(stream) {
console.log('jemand verbunden!');
};
server.on('connection', callback);
// ...
server.removeListener('connection', callback);
Quellcode:
// gibt ein „removeListener“-Ereignis aus, wenn der Listener entfernt wurde
EventEmitter.prototype.removeListener = function(type, listener) {
Var-Liste, Position, Länge, i;
if (!util.isFunction(listener))
Throw TypeError('listener must be a function');
if (!this._events || !this._events[type])
Geben Sie dies zurück;
list = this._events[type];
Länge = list.length;
Position = -1;
if (list === Listener ||
(util.isFunction(list.listener) && list.listener === listener)) {
Löschen Sie this._events[type];
If (this._events.removeListener)
This.emit('removeListener', type, listener);
} else if (util.isObject(list)) {
für (i = Länge; i-- > 0;) {
If (list[i] === Listener ||
(list[i].listener && list[i].listener === listener)) {
position = i;
Pause;
}
}
Wenn (Position < 0)
gib dies zurück;
If (list.length === 1) {
List.length = 0;
Löschen Sie this._events[type];
} sonst {
List.splice(position, 1);
}
If (this._events.removeListener)
This.emit('removeListener', type, listener);
}
gib dies zurück;
};