您的位置:首页 > 其它

undefined和null的区别

2019-01-05 19:50 387 查看

null 表示一个对象不存在
undefined 表示一个变量声明了没有初始化(赋值);

本质(数据类型):
undefined的类型(typeof)是undefined;
null的类型(typeof)是object;

形象记忆法:
null
Q:张三有房子么?
A:没有!
undefined
Q:有张三这个人么?
A:有!
Q: 张三有多少岁?
A: 不知道(没有被告诉)

注意:

  1. 、在验证null时,一定要使用 === ,因为 == 无法分别 null 和undefined
    console.log(null=undefined);// true
    console.log(null=undefined);// false
    2、转为number类型:
    console.log(Number(undefined))//NaN
    console.log(Number(null))//0
    3、转为布尔值均为false:
    undefined//false
    null//false

应用:
null
1、判断是否存在时用 null 。可以写 : if ( ! Nodeselect );
2、解除变量占用内存
document.point=null;
document.elem=null;
undefined
1、没有返回值的函数返回为undefined
2、没有实参的形参也是undefined。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: