【问题标题】:In javascript, [] === [] and [] == [] both returns false [duplicate]在 javascript 中,[] === [] 和 [] == [] 都返回 false [重复]
【发布时间】:2026-02-14 02:25:03
【问题描述】:

这是为什么呢?我一开始以为是隐式类型转换,但 [] == [] 也是错误的。

【问题讨论】:

    标签: javascript comparison-operators


    【解决方案1】:

    javascript 中的数组是对象。对象按身份进行比较。因此,由不同文字(或通过其他方式)创建的两个对象不会相等(严格 (===) 或松散 (==))。

    【讨论】:

    • 在 javascript 中:[] === [] 等于 new Array() === new Array(),这意味着数组的两个实例。
    • @T.J.Crowder 我一直对这些条款感到有些不安。感谢您的提醒。