js中undefined 和 null 区别

来源:网络 文章列表 2020-06-09 8
之前虽然也知道这两个之间的区别,但是让我描述的话,感觉上还是说的不是很清楚。今天也详细看了一次这个知识点,现在来说说这两者间的区别。   null: Null类型,代表“空值&rd

之前虽然也知道这两个之间的区别,但是让我描述的话,感觉上还是说的不是很清楚。今天也详细看了一次这个知识点,现在来说说这两者间的区别。

 

null: Null类型,代表“空值”,代表一个空对象指针,使用typeof运算得到 “object”,所以你可以认为它是一个特殊的对象值。

undefined: Undefined类型,当一个声明了一个变量未初始化时,得到的就是undefined。

null是javascript的关键字,可以认为是对象类型,它是一个空对象指针,和其它语言一样都是代表“空值”,不过 undefined 却是javascript才有的。undefined是在ECMAScript第三版引入的,为了区分空指针对象和未初始化的变量,它是一个预定义的全局变量。没有返回值的函数返回为undefined,没有实参的形参也是undefined。

 

javaScript权威指南: null 和 undefined 都表示“值的空缺”,你可以认为undefined是表示系统级的、出乎意料的或类似错误的值的空缺,而null是表示程序级的、正常的或在意料之中的值的空缺。

哈哈哈!!是不是感觉不是在说人话。如果和我一样不是很能听懂,请看下面。

 

javaScript高级程序设计: 在使用var声明变量但未对其加以初始化时,这个变量的值就是undefined。   null值则是表示空对象指针。

 

最后,我的理解就是: undefined是访问一个未初始化的变量时返回的值,而null是访问一个尚未存在的对象时所返回的值。因此,可以把undefined看作是空的变量,而null看作是空的对象。

在定义一个想保存对象的变量时,就可以让该变量先保存null值,这样既能体现null是一个空指针对象,也能更好的区分null和undefined。

腾讯云限量秒杀

1核2G 5M 50元/年 2核4G 8M 74元/年 4核8G 5M 818元/年 CDN流量包 100GB 9元

版权声明

本站部分原创文章,部分文章整理自网络。如有转载的文章侵犯了您的版权,请联系站长删除处理。如果您有优质文章,欢迎发稿给我们!联系站长:
愿本站的内容能为您的学习、工作带来绵薄之力。

评论

  • 随机获取
点击刷新
精彩评论

友情链接