我一直在阅读道格拉斯·克罗克福德(Douglas Crockford)的JavaScript: The Good Parts,然后我遇到了这个奇怪的例子,它对我来说毫无意义:
作者还提到“永远不要使用
'' == '0' // false
0 == '' // true
0 == '0' // true
false == undefined // false
false == null // false
null == undefined // true
作者还提到“永远不要使用
==
和!=
。相反,总是使用 ===
和!==
”。然而,他没有解释为什么会出现上述行为?所以我的问题是,为什么会出现上述结果?JavaScript中是否考虑传递性?
false==''
,false==' '
,但是''!=' '
。换句话说,空字符串和只有一个空格的字符串都是false(假),但不相等。 - user3546284