通常在以下语句结构中需要判断真假

if分支语句
while循环语句
for里的第二个语句

复制代码 代码如下:

if (boo) {
// do something
}

while (boo) {
// do something
}

JavaScript中有6个值为“假”,这六个值是

false
null
undefined
0
” (空字符串)
NaN

这里面false本身是布尔类型,其它5个则不是。

除了这6个外,其它均为“真” ,包括对象、数组、正则、函数等。注意
‘0’、’null’、’false’、{}、[]也都是真值 。

虽然这六个值都为“假”,它们之间并非都相等

复制代码 代码如下:

console.log( false == null ) // false
console.log( false == undefined ) // false
console.log( false == 0 ) // true
console.log( false == ” ) // true
console.log( false == NaN ) // false

console.log( null == undefined ) // true
console.log( null == 0 ) // false
console.log( null == ” ) // false
console.log( null == NaN ) // false

console.log( undefined == 0) // false
console.log( undefined == ”) // false
console.log( undefined == NaN) // false

console.log( 0 == ” ) // true
console.log( 0 == NaN ) // false

对于“==”,以上得出下列结论

false 除了和自身比较为true外,和0,” 也为true
null只和undefined比较时为true,
反过来undefined也仅和null比较为true,没有第二个
0除了和false比较为true,还有一个空字符串 ”
空字符串”出了和false比较为true,还有一个数字0

您可能感兴趣的文章:

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图