JavaScript中邏輯與&&和邏輯或||能夠用於任何數據類型,而不只是布爾值。spa
幾乎全部語言中||和&&都遵循「短路」原理, 如&&中第一個表達式爲假就不會去處理第二個表達式,而||正好相反。js一樣也遵循上述原則:code
var a = "" || null || 3 || 4; //3 var b = 3 && null && 4 && ""; //null var c = (3 || null ) && 5 && 6; //6 var d = (3 && "") || 15 || null; //15
js中,如下值被看成假(false):對象
其餘全部值都被當作真,包括true、字符串"false",以及全部的對象。blog