null 和 undefined 之间有几个区别,有时理解为相同。
-
定义:
-
Null:它是故意缺少值。它是 JavaScript 的原始值之一。
-
未定义:表示编译器中不存在该值。它是全局对象。
-
-
类型:
空:对象
未定义:未定义
-
您可以参阅“==”与“===”文章。
null == undefined // true null === undefined // false
这意味着null等于未定义但不相同。
-
当我们将变量定义为undefined 时,我们试图传达该变量不存在。
当我们将变量定义为null 时,我们试图传达该变量为空。 -
使用 isNaN() 进行区分:
您可以参考 NaN 文章以获得更好的效果
理解。isNaN(2 + null) // false isNaN(2 + undefined) // true
-
例子:
-
空值:
null ? console.log("true") : console.log("false") // false
Null也称为false 。
-
不明确的:
当变量没有赋值时
var temp; if(temp === undefined) console.log("true"); else console.log("false");
输出:
true
访问不存在的值
var temp=['a','b','c']; if(temp[3] === undefined) console.log("true"); else console.log("false");
输出:
true
-