根据JavaScript 中 null 和 undefined 的区别是什么?,null
并且undefined
是 Javascript 中的两个不同的对象(具有不同的类型)。但是当我尝试这段代码时
var a=null;
var b;
alert(a==null); // expecting true
alert(a==undefined); // expecting false
alert(b==null); // expecting false
alert(b==undefined); // expecting true
上述代码的输出是:
true
true
true
true
现在因为==
只匹配值,我认为两者undefined
和null
必须具有相同的值。所以我尝试了:
alert(null)
-> 给null
alert(undefined)
-> 给undefined
我不明白这怎么可能。
这是演示。
编辑
我知道这===
会给出预期的结果,因为undefined
并且null
有不同的类型,但是在 Javascript 的情况下,类型转换如何工作==
?我们可以像在 Java 中那样进行显式类型转换吗?我想在undefined
和上应用手动类型转换null
。