2015-05-18 51 views
0

嘿,大家好我是很新的JS和JQuery的一般,基本上我只是通過carasoul.js代碼會和整個下面一行代碼::爲什麼選擇e?

Carousel.prototype.pause = function (e) { 

    e || (this.paused = true) 

    if (this.$element.find('.next, .prev').length && $.support.transition) { 
     this.$element.trigger($.support.transition.end) 

    } 

我一直在調試這個插件中的一個來同時瞭解Jquery旋轉木馬如何工作。

現在如果你在上面的代碼行仔細一看,你會看到的代碼::

e || (this.paused = true) 

以下行我明白,這行代碼實際上是利用三元運營商和短路,我設法得到我的heaad,但我不明白的是,爲什麼檢查e

我完全錯過了對e檢查的觀點,爲什麼要進行嚴格的檢查?我console.logged,我發現它大部分時間是假的,但爲什麼檢查?有人可以解釋一下嗎?

+5

這實際上並不使用三元運算符。但是這和'if(!e){this.paused = true; }' –

+0

@MikeC我完全理解這個部分:)但那不是我的問題 –

+0

他們看到如果'!e' ...'e'在參數中...所以我們需要看看這是從哪裏調用知道'e'用於什麼。 – abc123

回答

1

如上所述@CBroe,這是一個事件處理程序中的事件對象檢查。它看起來像你也可以直接調用這些方法,因此沒有事件對象被傳遞到函數中,並且設置了一些對象成員的默認值。

很難說在何處以及爲什麼在不知道整個源代碼的情況下使用它。

相關問題