来自 计算机教程 2019-05-04 23:22 的文章
当前位置: 美洲杯冠军竞猜 > 计算机教程 > 正文

JS中Null与Undefined的区别美洲杯冠军竞猜

"==="为全等于,不仅包括数值还包括类型,前面讲了null和undefined类型不同,所以输出false,第二行代码同理。

js 代码

1、undefined数据类型只有一个值undefined,当声明的变量未初始化时,变量的默认值是undefined.

alert(null == undefined); //output "true"  

 

ECMAScript认为undefined是从null派生出来的,所以把它们定义为相等的。但是,如果在一些情况下,我们一定要区分这两个值,那应该怎么办呢?可以使用下面的两种方法。

我们没有对变量a进行初始化,所以输出undefined。

alert(typeof undefined); //output "undefined"  
alert(typeof null); //output "object"  

 

alert(null === undefined); //output "false"  
alert(typeof null == typeof undefined); //output "false"  

当页面中不存在id为notExistElement的元素时,输出null,因为我们在尝试获取一个不存在的对象。

 

console.log(document.getElementById("notExistElement"));
//null

使用typeof方法在前面已经讲过,null与undefined的类型是不一样的,所以输出"false"。而===代表绝对等于,在这里null === undefined输出false。

var a;
console.log(a);
//undefined

Undefined类型只有一个值,即undefined。当声明的变量还未被初始化时,变量的默认值为undefined。
Null类型也只有一个值,即null。null用来表示尚未存在的对象,常用来表示函数企图返回一个不存在的对象。

 

js 代码

console.log(null===undefined);
console.log(typeof null==typeof undefined);
//false
//false

这段代码显示为true,代表oVlaue的值即为undefined,因为我们没有初始化它。

这里就更让我们疑惑了,为甚null==undefined会输出true呢,ECMAscript认为undefined是从null派生出来的,所以定义相等。但在实际编程中想区分两者,怎么办呢?

在JavaScript中存在这样两种原始类型:Null与Undefined。这两种类型常常会使JavaScript的开发人员产生疑惑,在什么时候是Null,什么时候又是Undefined?

console.log(null==undefined);
//true

js 代码

本文由美洲杯冠军竞猜发布于计算机教程,转载请注明出处:JS中Null与Undefined的区别美洲杯冠军竞猜

关键词: