在我能找到的所有JavaScript運算符優先級圖表(如this one和this one)中,邏輯與(&&
)的略高於邏輯OR(||
)的優先級。AND(&&)優先於OR(||)的重要性的表達式示例?
我似乎無法弄清楚表達式的結果是不同的,如果他們有相同的優先權。我認爲必須有某種方式才能解決問題,否則如果沒有,他們會被列爲具有相同的優先級。
例如:
0 || 2 && 0 || 3
是3
,但沒關係我如何切,最多,它總是將是3
:
(0 || 2) && 0 || 3
0 || (2 && 0) || 3
(0 || 2 && 0) || 3
0 || 2 && (0 || 3)
0 || (2 && 0 || 3)
如果我作出這樣的第一0
東西其他(如4
),結果總是4
,因爲第一個||
甚至沒有看到右側。如果我將0
和3
替換爲最後的||
左右,結果仍爲3
。
我來最接近的是
0 || false && "" || NaN
...這是NaN
,而
0 || false && ("" || NaN)
...是false
,但我認爲這由左到純粹的解釋正確的語義,而不是&&
更高的優先級。
我一定會錯過它,因爲什麼樣的表達方式會影響&&
比||
更高的優先級?
只是做一個猜測:作爲一個備用的可能? – maioman
'true ||假&&假' –