JavaScript.The.Good.Parts阅读笔记(一)假值与===运算符

时间:2021-05-26

JavaScript的假值列表如下,

类型

0

Number

NaN (非数字)

Number

'' (空字符串)

String

false

Boolean

null

Object

undefined

Undefined

以上的值作为判断条件,都将为假值,如:

复制代码 代码如下:
if(undefined) {
alert('undefined'); //这行代码不会执行
}
while(null)
{
alert('null'); //这行代码不会执行
}


虽然这些值全部都等同于假,但它们是不可互换的。
下面列出一些例子 :
undefined === null //false
undefined == null //true

甚至
NaN === NaN //false
NaN == NaN //false
PS:NaN跟NaN无论用哪种运算都不相等,可以用IsNaN(NaN)来解决NaN的判断问题。

==(!=)运算符会进行强制类型转换,而且转换规则相当诡异。下面是一些例子。
复制代码 代码如下:
'' == '0' // false
0 == '' // true
0 == '0' // true
false == 'false' // false
false == '0' // true
false == undefined // false
false == null // false
null == undefined // true
' \t\r\n ' == 0 // true

建议使用===(!===)运算符。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章