1.都会转成falsejavascript
if(!undefined){ console.log('undefined') } if(!null){ console.log('null') } //输出 undefined null
2.并且使用相等来判断,是相等的html
console.log(undefined == null)//true console.log(undefined === null) //false
3.它们都是数据类型,并且它们都只有一个值。java
感谢阮一峰老师的解答:http://www.ruanyifeng.com/blog/2014/03/undefined-vs-null.html函数
1.null是一个表示"无"的对象,转为数值时为0;undefined是一个表示"无"的原始值,转为数值时为NaN。spa
Number(null); //0 5+null; //5 Number(undefined);// NaN 5 + undefined;// NaN
Object.getPrototypeOf(Object.prototype)// null
变量被声明了,但没有赋值时,就等于undefined。prototype