undefined示意”缺乏值”,就是此处应当有一个值,然则还没有定义。典范用法是:
(1)变量被声清楚明了,但没有赋值时,就即是undefined。
(2) 挪用函数时,应当供应的参数没有供应,该参数即是undefined。
(3)对象没有赋值的属性,该属性的值为undefined。
(4)函数没有返回值时,默许返回undefined。
null示意”没有对象”,即该处不该当有值。典范用法是:
(1) 作为函数的参数,示意该函数的参数不是对象。
(2) 作为对象原型链的尽头。
Object.getPrototypeOf(Object.prototype)
// null
false == undefined // false
false == null // false
null == undefined // true WTF