null 和 undefined 的区别

在JavaScript中,null 和 undefined 几乎相等

console.log(null==undefined);    //true  因为两者都默认转换成了false
console.log(typeof undefined);    //"undefined"  
console.log(typeof null);       //"object"  
console.log(null===undefined);    //false   "==="表示绝对相等,null和undefined类型是不一样的,所以输出“false”

区别

null表示没有对象,即该处不应该有值。

  1. 作为函数的参数,表示该函数的参数不是对象。
  2.  作为对象原型链的终点。

undefined表示缺少值,即此处应该有值,但没有定义。

  1. 定义了形参,没有传实参,显示undefined。
  2. 对象属性名不存在时,显示undefined。
  3. 函数没有写返回值,即没有写return,拿到的是undefined。
  4. 写了return,但没有赋值,拿到的是undefined。

null和undefined转换成number数据类型

  1. null 默认转成 0。
  2. undefined 默认转成 NaN。
发布了50 篇原创文章 · 获赞 7 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/xh_960125/article/details/104019485
今日推荐