1
我有以下代碼:JS代碼片段
var person = { name: "Nicholas" };
var people = [{ name: "Nicholas" }];
var morePeople = [person];
alert(people.indexOf(person)); //-1
alert(morePeople.indexOf(person)); //0
我想不通,爲什麼第一個警報給出-1(未找到)當人們是一個數組,包含{ name: "Nicholas" }
因爲兩個不同的對象*「實例」*永遠不會彼此相等。 –
您創建了兩個不同的對象。它們恰好分享相同的字符串值,但它們本身並不相同。 –
http://stackoverflow.com/questions/1068834/object-comparison-in-javascript –