JavaScript 中的 undefined 和 null 值介绍

2022-05-31 0 By admin

JavaScript 中有两个特殊值: undefined 和 null。这里介绍分别介绍一个这两个值,并说明两个值的相同点和不同点。

一、undefined 介绍

  1. 在读取未赋值的变量,会得到 undefined 值。
  2. 在读取对象没有的属性时,会得到 undefined 值。

1.1、变量没有赋值

function test(id) {
    return id;
}
console.log(test());//undefined

调用函数时,没提供应有的参数,该参数则等于undefined。

1.2、调用对象中不存在的属性

var o = new Object();
 o.p;//undefined

1.3、函数没有返回值的时候

function test() {
}
test();//默认返回undefined.

二、null 值介绍

  1. 表示无值(一个空对象指针)。
  2. 定义变量准备之后用来保存对象,就可初始化值为null,用来存字符串,初始化值为””。

2.1、null 值是 object类型

var a = null; 
console.log(typeof a)//object

三、检查变量或属性是否为 undefined 或 null

如果想检查某属性是否为null或undefined,那么只要使用if语句和逻辑非运算符即可。

var myData = {
	name: "adam",
	city: null
};
if(!myData.name){
	document.writeln("name IS null or undefined")
}

这里借助了JavaScript执行的类型转换。
有了类型转换,检查的值会被当作布尔值处理。如果变量为null或undefined,则转换为布尔值false。

四、区分null 和 undefined

在比较两个值时,所用方法应视所需而定。

  1. 两个值使用相等运算符(==)比较,返回真。
  2. 两个值使用等同运算符(===)比较,返回假。