邏輯與&&和邏輯或||操作符可以應用於任何類型的操作數,而不僅僅是布爾值。
幾乎所有語言中||和&&都遵循“短路”原理, 如&&中第一個表達式為假就不會去處理第二個表達式,而||正好相反。js同樣也遵循上述原則:
- 當邏輯或||時,找到為true的分項就停止處理,並返回該分項的值,否則執行完,並返回最后分項的值。
- 當邏輯與&&時,找到為false的分項就停止處理,並返回該分項的值。
1 var a = "" || null || 3 || 4;//3 2 alert(a); 3 var b = 4 && 5 && null && "0";//null 4 alert(b);