通常在以下語句結構中需要判斷真假 if分支語句while迴圈語句for裡的第二個語句如 if (boo) { // do something} while (boo) { // do something} JavaScript中有6個值為“假”,這六個值是 falsenullundefined0'' (Null 字元串)NaN 這裡面false本身是布爾類型,其它5個則不是。 除了這6個外,其它均為“真” ,包括對象、數組、正則、函數等。注意 '0'、'null'、'false'、{}、[]也都是真值 。 雖然這六個值都是假,但它們之間並非都相等。 console.log( false == null ) // falseconsole.log( false == undefined ) // falseconsole.log( false == 0 ) // trueconsole.log( false == '' ) // trueconsole.log( false == NaN ) // false console.log( null == undefined ) // trueconsole.log( null == 0 ) // falseconsole.log( null == '' ) // falseconsole.log( null == NaN ) // false console.log( undefined == 0) // falseconsole.log( undefined == '') // falseconsole.log( undefined == NaN) // false console.log( 0 == '' ) // trueconsole.log( 0 == NaN ) // false 對於“==”,以上得出下列結論 false 除了和自身比較為true外,和0,'' 也為truenull只和undefined比較時為true, 反過來undefined也僅和null比較為true,沒有第二個0除了和false比較為true,還有一個Null 字元串 ''Null 字元串''出了和false比較為true,還有一個數字0