2016-01-14 45 views
-2

我想检查我的数组中的两个对象是否相等。尝试检查两个对象是否等于if子句

我试试这个:

for(var i = 0; i < data.length; i++){ 
    if(Object.is(data[i].Attribute_Name, data[i-1].Attribute_Name) && i > 1) 
     console.log(data[i].Attribute_Name); 
} 

但我得到这个errormessage的:

TypeError: data[(i - 1)] is undefined

if(Object.is(data[i].Attribute_Name, data[i-1].Attribute_Name) && i > 1)

我的对象是这样的:

Attribute_Name="Einkommen" 

Attribute_Name="Einkommen" 

Attribute_Name="Einkommen" 

Attribute_Name="Ausgaben" 

Attribute_Name="Ausgaben" 

Attribute_Name="Ausgaben" 

Attribute_Name="Alter" 

Attribute_Name="Alter" 

我的我的网页的输出是相同的。

enter image description here

的红色标记的区域不应apear。

+2

第一次通过循环,'i'是'0',所以'i-1'是'-1'。 – Pointy

回答

1

您的循环第一次运行,i == 0。您正试图使用​​i-1索引到数组中,这是-1,这是一个无效的数组索引。

相关问题