以下是Firebug的完成:在Javascript中,爲什麼[1,2] == [1,2]或({a:1})==({a:1})爲false?
>>> [1, 2] == [1, 2]
false
>>> ({a : 1}) == ({a : 1})
false
我想Javscript有一些規定說,如果一個對象或數組具有相同的元素相同的標記,那麼他們是平等的嗎?
但是即使我說
>>> foo = {a : 1}
Object { a=1}
>>> [foo] == [foo]
false
>>> ({a: foo}) == ({a: foo})
false
有沒有辦法讓這個它可以做的元素的比較,並返回true
?
對象文字創建新實例,定義兩個實例不會讓它們共享相同的引用。 – zzzzBov
它不是「內部元素」,需要相等嗎? –