Skip to content

Commit be56fb7

Browse files
ZYSzyscodebytere
authored andcommitted
events: extract listener check as a function
PR-URL: #24303 Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: Ruben Bridgewater <[email protected]> Reviewed-By: Denys Otrishko <[email protected]> Reviewed-By: Franziska Hinkelmann <[email protected]> Reviewed-By: James M Snell <[email protected]>
1 parent 94d200f commit be56fb7

File tree

1 file changed

+13
-16
lines changed

1 file changed

+13
-16
lines changed

‎lib/events.js‎

Lines changed: 13 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,13 @@ function lazyErrors(){
4848
returnerrors;
4949
}
5050

51+
functioncheckListener(listener){
52+
if(typeoflistener!=='function'){
53+
consterrors=lazyErrors();
54+
thrownewerrors.ERR_INVALID_ARG_TYPE('listener','Function',listener);
55+
}
56+
}
57+
5158
Object.defineProperty(EventEmitter,'defaultMaxListeners',{
5259
enumerable: true,
5360
get: function(){
@@ -195,10 +202,7 @@ function _addListener(target, type, listener, prepend){
195202
varevents;
196203
varexisting;
197204

198-
if(typeoflistener!=='function'){
199-
consterrors=lazyErrors();
200-
thrownewerrors.ERR_INVALID_ARG_TYPE('listener','Function',listener);
201-
}
205+
checkListener(listener);
202206

203207
events=target._events;
204208
if(events===undefined){
@@ -283,20 +287,16 @@ function _onceWrap(target, type, listener){
283287
}
284288

285289
EventEmitter.prototype.once=functiononce(type,listener){
286-
if(typeoflistener!=='function'){
287-
consterrors=lazyErrors();
288-
thrownewerrors.ERR_INVALID_ARG_TYPE('listener','Function',listener);
289-
}
290+
checkListener(listener);
291+
290292
this.on(type,_onceWrap(this,type,listener));
291293
returnthis;
292294
};
293295

294296
EventEmitter.prototype.prependOnceListener=
295297
functionprependOnceListener(type,listener){
296-
if(typeoflistener!=='function'){
297-
consterrors=lazyErrors();
298-
thrownewerrors.ERR_INVALID_ARG_TYPE('listener','Function',listener);
299-
}
298+
checkListener(listener);
299+
300300
this.prependListener(type,_onceWrap(this,type,listener));
301301
returnthis;
302302
};
@@ -306,10 +306,7 @@ EventEmitter.prototype.removeListener =
306306
functionremoveListener(type,listener){
307307
varlist,events,position,i,originalListener;
308308

309-
if(typeoflistener!=='function'){
310-
consterrors=lazyErrors();
311-
thrownewerrors.ERR_INVALID_ARG_TYPE('listener','Function',listener);
312-
}
309+
checkListener(listener);
313310

314311
events=this._events;
315312
if(events===undefined)

0 commit comments

Comments
(0)