방법 설명:
지정된 이벤트에 대한 리스너를 제거합니다.
문법:
Emitter.removeListener(이벤트, 리스너)
수신 매개변수:
이벤트(문자열) 이벤트 종류
리스너(함수) 등록된 리스너
예:
var 콜백 = 함수(스트림) {
console.log('누군가 연결되었습니다!');
};
server.on('연결', 콜백);
// ...
server.removeListener('connection', callback);
소스코드:
// 리스너가 제거되면 'removeListener' 이벤트를 발생시킵니다
EventEmitter.prototype.removeListener = 함수(유형, 리스너) {
var 목록, 위치, 길이, i;
if (!util.isFunction(리스너))
Throw TypeError('리스너는 함수여야 합니다.');
if (!this._events || !this._events[유형])
이것을 돌려주세요;
목록 = this._events[유형];
길이 = list.length;
위치 = -1;
if (목록 === 청취자 ||
(util.isFunction(list.listener) && list.listener === 리스너)) {
삭제하세요._events[type];
If (this._events.removeListener)
This.emit('removeListener', 유형, 청취자);
} else if (util.isObject(list)) {
for (i = 길이; i-- > 0;) {
If (목록[i] === 청취자 ||
(list[i].listener && list[i].listener === 리스너)) {
위치 = i;
휴식;
}
}
(위치
이것을 돌려주세요.
If (list.length === 1) {
목록.길이 = 0;
삭제하세요._events[type];
} 그 밖의 {
List.splice(위치, 1);
}
If (this._events.removeListener)
This.emit('removeListener', 유형, 청취자);
}
이것을 돌려주세요;
};