我知道使用“===”比较类型,因此运行以下代码会导致“不等于”,因为它将数字类型与字符串类型进行比较。
var a = 20;
var b = "20";
if (a === b) {
alert("They are equal");
} else {
alert("They are not equal");
}
但我不明白如何使用“==”仅比较值导致“它们相等”消息。
var a = 20;
var b = "20";
if (a == b) {
alert("They are equal");
} else {
alert("They are not equal");
}
值如何相等?字符串“20”不是存储为ASCII字符50和48(二进制的0110010和0110000)和20存储为实际的二进制数0010100吗?
编辑:谢谢大家!我认为所有的反应都很棒,并且帮助我更好地理解了这一点。