null和undefined的区别

Posted

tags:

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

undefined表示变量声明但未初始化时的值,

null表示准备用来保存对象,还没有真正保存对象的值。从逻辑角度看,null值表示一个空对象指针。

 

javascript(ECMAScript标准)里共有5种基本类型:Undefined, Null, Boolean, Number, String,和一种复杂类型Object。可以看到null和undefined分属不同的类型,未初始化定义的值用typeof检测出来是"undefined"(字符串),而null值用typeof检测出来是"object"(字符串)。

 

任何时候都不建议显式的设置一个变量为undefined,但是如果保存对象的变量还没有真正保存对象,应该设置成null。

实际上,undefined值是派生自null值的,ECMAScript标准规定对二者进行相等性测试要返回true,即 

alert(null==undefined);  // true

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

javascript中null和undefined的区别?

前端小知识点:undefined和null区别

Javascript 中 null,NaN和undefined的区别

js中null和undefined的区别

null 和 undefined 区别

null和undefined的区别