2016-11-21 66 views
1

讓我們說我有這樣一個三元代碼: element ? doSomething() : doNothing;,我想知道是否有關鍵字使用這個三元指令說什麼都不做。這就是我應該說的話,如果不使用空函數就什麼也不做。我試圖把分號給我一個錯誤。javascript中沒有說明

+2

如果你不打算使用這個表達式的值,那麼'if'是正確的選擇。如果你想使用這個值,你需要提供':'部分。 – Thilo

回答

3

只需使用if如果你沒有使用else -part速記語法反正意向。

if (element) doSomething(); 
2

使用Logical AND(&&),而不是ternary操作!

element && doSomething(); 

expr1 && expr2,返回expr1如果它可以被轉換爲false;否則,返回expr2。因此,利用布爾值使用時,& &返回true如果兩個操作數都爲真;否則,返回false

0

如果你真的想使用三元表達式:

element ? doSomething() : true 
3

使用三元你可以這樣做:

element ? doSomething() : null; 

這可能是因爲你不會想返回一個布爾值的最佳方法或者代替null的其他值。

如果表達式不爲真,它將返回null,這允許您在其他位置檢查空值(如果已將其分配給變量)。