【发布时间】:2011-12-04 13:19:17
【问题描述】:
以下是在 Firebug 中完成的:
>>> [1, 2] == [1, 2]
false
>>> ({a : 1}) == ({a : 1})
false
我认为 Javscript 有一些规则说,如果 Object 或 Array 对相同元素具有相同的引用,那么它们是相等的?
但即使我说
>>> foo = {a : 1}
Object { a=1}
>>> [foo] == [foo]
false
>>> ({a: foo}) == ({a: foo})
false
有没有办法让它可以进行元素比较并返回true?
【问题讨论】:
-
对象字面量创建新实例,定义两个实例不会使它们共享相同的引用。
-
不是“内部元素”需要相等吗?
标签: javascript