JavaScript 中 null 和 undefined 的区别

201 阅读1分钟

nullundefined 的区别

1、Null

  • null 表示一个"无"的对象,转为数值为 0
  • 作为函数的参数,表示该函数的参数不是对象;
  • 作为对象原型链的终点;
  • Number(null)0
  • 5 + null5
  • JSON.stringify(null)'null' (字符串);
  • JSON.parse(null)null (null 基本类型)。

2、Undefined

  • 变量被声明了,但是没有赋值,就等于 undefined
  • 调用函数时,应该提供的参数没有提供,该参数等于 undefined
  • 对象没有赋值属性,该属性的值为 undefined
  • 函数没有返回值时,默认返回 undefined
  • Number(undefined)NaN
  • 5 + undefinedNaN
  • JSON.stringify(undefined)undefined
  • JSON.parse(undefined) 为 ==报错==。