之前的学习过程中对于这两者之间我一直搞得模棱两可,现在就一篇阅读过的文章做个小总结.------
Javascript中的undefined和null通常被认为是一个设计缺陷,这一点不去研究,但我看到一篇文章中说JavaScript的设计者最初是这么想的:
假如你打算把一个变量赋予对象类型的值,但是现在还没有赋值,那么你可以用null表示现在此时刻的状态(证据之一就是typeof null的结果是'object');相反,假如你打算把一个变量赋值于原始类型的值,但现在还没赋值的状态,那么就可以用undefined表示此时此刻的状态.
不管这个说法是正确与否,但是实际使用的时候两者做==比较的结果是true是很合理的,undefined==null 返回结果是true.
网友评论