我从数据库中获得了部分匹配结果的对象。

[Object { home1=4, away1=3, home2=4, away2=5, home3=6, away3=7, home4=6, away4=5, home5=3, away5=6}]

home1是主队第一部分的结果,
away1->客队,home2是主队第二部分的结果...等等

在我的情况下,数据是每一行,这是我从数据库中获得的。
在具有类的td行中:home1,home2,home3,away1,away2,并且存在匹配的对应部分的值。
我想检查值是否等于从数据库中获得的值。
像这样
if ($('.home1') === data[index].home1;
if($('.away2') === data[index].away2;

应该有一些循环。我不知道该怎么做,我想到了一个数组
var array = [

                        {
                             home1: data[index].home1,
                             away1: data[index].away1
                        },
                          {
                             home2: data[index].home2,
                             away2: data[index].away2
                        },
                          {
                             home3: data[index].home3,
                             away3: data[index].away3
                        },
                         {
                             home4: data[index].home4,
                             away4: data[index].away4
                        },
                         {
                             home5: data[index].home5,
                             away5: data[index].away5
                        }


                    ]

然后for循环:
for(var X=0; X<5;X++){
homeX == data[index].homeX
}

如何通过eval函数递增变量的名称?还是有其他解决方案?我很困惑

最佳答案

您可以使用运算符[]访问对象属性:

for(var i=0; i<array.length; i++)
{
    var item = array[i];
    var homePropertyName = 'home' + (i+1);
    //now you can access homeX property of item using item[homePropertyName]
    //e.g. item[homePropertyName] = data[index][homePropertyName]
}

08-19 04:34