JavaScript中undefined和null的区别

Posted jayreally

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript中undefined和null的区别相关的知识,希望对你有一定的参考价值。

javascriptundefinednullundefined表示没有数值,在使用var 声明变量但未对其加以初始化时,这个变量的值就是undefined

null:表示有数值,但是数值为“空”.

1. 两者的声明

声明但未定义:undefined;

1 var a;
2 console.log(a);    // 执行结果:undefined

 

声明且定义为null;

1 var b = null;
2 console.log(b);    //执行结果:null

 

2. typeof类型不同

undefined的类型是undefined

null类型是object

1 console.log(typeof(undefined));  //执行结果:undefined
2 console.log(typeof(null));       //执行结果:object

 

3. 转化为数值的类型不同

undefined转化为数值是NaN

null转化为数值是0

1 console.log(Number(undefined));        //执行结果:NaN
2 console.log(Number(undefined+10));     //执行结果:NaN
3 
4 console.log(Number(null));             //执行结果:0
5 console.log(Number(null+10));          //执行结果:10

 

4. 两者之间 == ===

==运算符比较:先判断两侧内容的数据类型,如果数据类型不同,会自动转化为相同类型,再进行比较;

===运算符比较:比较两侧内容的数据类型以及值,如果两侧内容数据类型不同,直接就是false,不会执行数据类型自动转化;

1 console.log(undefined == null);     //执行结果:true
2 console.log(undefined === null);    //执行结果:false

 

 

逆战班

以上是关于JavaScript中undefined和null的区别的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript中null和undefined的区别

JavaScript中null和undefined

JavaScript中null和undefined

javascript中的null和undefined

深入理解javascript之null和undefined

Javascript 中 null,NaN和undefined的区别