javascript中 Null和Undefined 的区别

NUll:

 null 是 js 中的关键字,表示空值. null 可以看做是 object 的一个特殊的值, 如果一个object值为空,表示这个对象不是有效对象

Undefined:

undefined不是js 中的关键字, 其是一个全局变量. 是Global的一个属性,以下情况会返回undefined:

 1) 使用是一个未定义的变量; var i;

  2) 使用了已定义但为声明的变量;

  3)  使用了一个对象属性,但该属性不存在或者未赋值

  4)  调用函数时,该提供的参数没有提供:

function numb(aa){
   alert(aa);
};

numb(); //undefined

  5)  函数没有返回值时,默认返回undefined

     

var bb = numb();
alert(bb);// Undefined

相同点:

都是原始类型的值,保存在栈中变量本地

两者的区别:

      1.类型不一样:

console.log(typeOf undefined);//undefined

console.log(typeOf null);//object

2.转化为值时不一样:undefined为NaN ,null为0

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

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

3.  undefined===null;    //false       

Undefined 值是派生自 null 值

  undefined==null;  //true

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值