为什么JavaScript中0 == ""
为真?我找到了similar post here,但为什么数字0类似于空字符串?当然,0 === ""
是假的。
答案 0 :(得分:57)
0 == ''
左操作数的编号为。
右操作数的类型为String。
在这种情况下,右操作数被强制转换为Number:
类型0 == Number('')
导致
0 == 0
来自抽象平等比较算法(编号4):
如果Type(x)是Number而Type(y)是String,则返回结果 比较x == ToNumber(y)。