鍍金池/ 問答/HTML/ events npm 模塊解讀疑惑, 請幫忙梳理下思路

events npm 模塊解讀疑惑, 請幫忙梳理下思路

不理解的地方,如圖所示:

clipboard.png

源碼地址:
sourcecode

這個是實例化的時候會執(zhí)行的初始化屬性對方法。為什么還要對屬性進行一層判斷。請賜教

我稍微修改了下問題,把模塊源碼鏈接和截圖改成他的第v1.0.0的版本。這個版本更簡化些
回答
編輯回答
玄鳥

個人覺得是因為EventEmitter的任何實例,都是可以執(zhí)行event.prototype.init,如果已經(jīng)存在的一個event執(zhí)行了init方法,就需要經(jīng)過IF判斷

2017年4月18日 07:50
編輯回答
疚幼

在這個版本當中,并沒有發(fā)現(xiàn)有什么用,以下純屬瞎猜。

if (!this._events ...){

}

這部分有可能是歷史遺留代碼,這部分代碼意思是如果它看起來像鴨子,游泳像鴨子,叫聲像鴨子,那么它非??赡芫褪侵圾喿?/code>,因此就不重新實例化。建議查查歷史版本和歷史的使用方式。

this._maxListeners = this._maxListeners || undefined;

如果this._maxListeners是假值就變成undefined,比如0/NaN

2018年7月5日 11:02