2016-02-23 65 views

回答

1
$(this).val()&&(idCat=$(this).val()); 

的作品就像一個簡單的AND條件,其中

$(this).val()(idCat=$(this).val())兩個條件。

如果$(this).val()是0或東西是假像Boolean ("")(即VAL()返回一個空字符串)或Boolean (null)然後第一條件的布爾equivant將失敗,並且第二條件將不被執行。

0

執行該代碼將停止,如果第一部分(&&之前)的計算結果爲假,因爲你可以通過測試下面的代碼看...

(false)&&(console.log("statement is true")); 

(true)&&(console.log("statement is true")); 

它基本上是if語句的縮寫,我建議不要在將來爲你使用它,任何人都可以誰必須閱讀你的代碼。雖然它不是世界上最複雜的東西,但它的可讀性肯定比簡單的if語句更不可讀,更容易被誤讀。

+0

是的,你是對的,我不會自己寫這樣的代碼。 –

+0

你可以做更糟糕的事情 - 這個人並不真正讓我感到厭煩,但我知道這會讓一些人感到厭煩。 – Archer

相關問題