null和undefined的区别

2018-11-12 06:50:05来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

Null:代表空对象指针。现在没有,将来可能会有

undefined:空,未定义。现在没有,将来也不会有(Js中独有的数据类型)

区别:

两者类型不一样

console.log(typeof null); //object
console.log(typeof undefined);//undefined

转成数值结果不一样

console.log(Number(null));//0
console.log(Number(undefined));//NaN

 

null出现的情况:

1、某个元素找不到

2、RegExp中匹配不到显示null

3、对象彻底销毁的时候为null (对象销毁->给复合数据类型赋值null,清除当前变量占用的内存)

undefined出现的情况:

1、变量未赋值为undefined

2、某个对象下没有这个属性

3、函数的默认返回值

4、访问形参时候,实参没有传值会出现undefined

5、变量提升->var变量声明时候,赋值前为undefined

6、在块级作用域{}之外访问undefined(内部访问是函数本身)

7、严格模式下的this是undefined

8、简单类型身上加属性结果为undefined

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:JavaScript -- 时光流逝(十二):DOM -- Element 对象

下一篇:值得记录的 (三)