events: return values directly in listeners
Each conditional branch in EventEmitter.prototype.listeners assigns its return value to a variable ret which is returned at the end. Instead just return from within each branch. This is both clearer and more performant. events/ee-listeners.js n=5000000 3.65 % *** 3.359171e-10 PR-URL: https://github.com/nodejs/node/pull/16212 Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Refael Ackermann <refack@gmail.com>
This commit is contained in:
parent
c8d4ff1d52
commit
fd166a8759
@ -481,23 +481,19 @@ EventEmitter.prototype.removeAllListeners =
|
||||
};
|
||||
|
||||
EventEmitter.prototype.listeners = function listeners(type) {
|
||||
var evlistener;
|
||||
var ret;
|
||||
var events = this._events;
|
||||
const events = this._events;
|
||||
|
||||
if (events === undefined)
|
||||
ret = [];
|
||||
else {
|
||||
evlistener = events[type];
|
||||
if (evlistener === undefined)
|
||||
ret = [];
|
||||
else if (typeof evlistener === 'function')
|
||||
ret = [evlistener.listener || evlistener];
|
||||
else
|
||||
ret = unwrapListeners(evlistener);
|
||||
}
|
||||
return [];
|
||||
|
||||
return ret;
|
||||
const evlistener = events[type];
|
||||
if (evlistener === undefined)
|
||||
return [];
|
||||
|
||||
if (typeof evlistener === 'function')
|
||||
return [evlistener.listener || evlistener];
|
||||
|
||||
return unwrapListeners(evlistener);
|
||||
};
|
||||
|
||||
EventEmitter.listenerCount = function(emitter, type) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user