【问题标题】:Why does comparing {} and [] show an error? [duplicate]为什么比较 {} 和 [] 会显示错误? [复制]
【发布时间】:2017-06-30 07:33:35
【问题描述】:

在空闲时间,我只是在玩js控制台,我遇到了一个意外的错误:

js> [] == {}
false

js> {} == []
typein:5: SyntaxError: syntax error:

我试过===

js> [] === {}
false
js> {} === []
typein:9: SyntaxError: syntax error:

我想错了吗?

我用 Firefox、Chrome 和 jscore 对此进行了测试。

【问题讨论】:

    标签: javascript google-chrome firefox javascript-objects


    【解决方案1】:

    这是因为在第二种情况下,{} 被解释为代码块,而不是对象。

    如果您尝试({}) == [],它就可以正常工作。

    js> ({}) == []
    false
    js> ({}) === []
    false
    

    【讨论】:

      猜你喜欢
      • 2015-02-13
      • 2015-07-16
      • 2018-05-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-07
      • 2010-10-08
      相关资源
      最近更新 更多