在我的空闲时间,我只是在玩js控制台,我遇到了一个意想不到的错误:
js> [] == {}
false
js> {} == []
typein:5: SyntaxError: syntax error:
我尝试了===
:
js> [] === {}
false
js> {} === []
typein:9: SyntaxError: syntax error:
我在这里想错了吗?
我使用Firefox,Chrome和jscore进行了测试。
答案 0 :(得分:25)
那是因为在第二种情况下,{}
被解释为代码块,而不是对象。
如果您尝试({}) == []
,它就可以正常使用。
js> ({}) == []
false
js> ({}) === []
false