通常在以下语句结构中需要判断真假
如
|
1
2
3
4
5
6
7 |
if
(boo) { // do something}while
(boo) { // do something} |
JavaScript中有6个值为“假”,这六个值是
这里面false本身是布尔类型,其它5个则不是。
除了这6个外,其它均为“真” ,包括对象、数组、正则、函数等。注意 ‘0‘、‘null‘、‘false‘、{}、[]也都是真值 。
虽然这六个值都为“假”,它们之间并非都相等
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 |
console.log( false
== null
) // falseconsole.log( false
== undefined ) // falseconsole.log( false
== 0 ) // trueconsole.log( false
== ‘‘
) // trueconsole.log( false
== NaN ) // falseconsole.log( null
== undefined ) // trueconsole.log( null
== 0 ) // falseconsole.log( null
== ‘‘
) // falseconsole.log( null
== NaN ) // falseconsole.log( undefined == 0) // falseconsole.log( undefined == ‘‘) // falseconsole.log( undefined == NaN) // falseconsole.log( 0 == ‘‘
) // trueconsole.log( 0 == NaN ) // false |
对于“==”,以上得出下列结论
JavaScript中奇葩的假值,布布扣,bubuko.com
原文:http://www.cnblogs.com/snandy/p/3589517.html