JavaScript基本概念整理(null、undefined)
2019-02-15 本文已影响0人
Fakecoder_Sunis
null与undefined都可以表示“没有”,含义非常相似。将一个变量赋值为undefined或null,老实说,语法效果几乎没区别。
var a = undefined;
// 或者
var a = null;
上面代码中,变量a分别被赋值为undefined和null,这两种写法的效果几乎等价。
在if语句中,它们都会被自动转为false,相等运算符(==)甚至直接报告两者相等。
if (!undefined) {
console.log('undefined is false');
}
// undefined is false
if (!null) {
console.log('null is false');
}
// null is false
undefined == null
// true
当转化为Number时,null自动变成0,而undefined变成NaN
Number(null) // 0
5 + null // 5
Number(undefined) // NaN
5 + undefined // NaN