null
null是object类型 代表空
可以理解为 没有对象,可能将来要赋值一个对象,即该处不应该有值
undefined
是 undefined类型
可以理解为 你定义了一个属性但没有赋值
定义了形参,没有传实参,显示undefined
对象属性名不存在时,显示undefined
函数没有写返回值,即没有写return,拿到的是undefined
写了return,但没有赋值,拿到的是undefined
相同点
console.log(null == undefined); // true 因为他们都会默认转换为false
console.log(Boolean (null)); // false
console.log(Boolean (undefined)); // false
不同点
console.log(null === undefined); // false 因为===为判断数据类型
console.log(typeof undefined); //"undefined"
console.log(typeof null); //"object"