2014-02-27 31 views
-3

正如標題所說的一切。 5 || 00 || 5在JavaScript中返回5。爲什麼會發生這種情況,兩個||在JavaScript中意味着什麼?在javascript中,5 || 0和0 || 5返回5

+0

| |是布爾邏輯'OR'。 – JAL

+0

短路評估:http://en.wikipedia.org/wiki/Short-circuit_evaluation – lexith

+0

爲什麼每個人似乎都在發現本週Javascript是如何運作的邏輯運營商?最近幾次看到這個問題。 – deceze

回答

1

這是boolean or,並且5評價爲truthy。如果你要強制類型爲布爾,你應該使用!!(雙反)像這樣,

!!(5 || 0) 
1

||是布爾或。

5 == true 
0 == false 

所以,5 || 0 = 5

0

||對於logical OR

的代名詞所以聲明ANY_VALUE || ANY_OTHER_VALUE意味着,如果第一個值是truthy然後返回否則返回第二個值