1

所以我有一个对象数组,其中许多具有重复的键属性,因为有些是动态创建的复制,其中一些非特定字段可能会发生变化。

var myArray = [
{Name: Object1, Version:1, TimeCreated: 1:00, Quantity: 3},
{Name: Object1, Version:2, TimeCreated: 13:00, Quantity: 8},
{Name: Object1, Version:3, TimeCreated: 14:00, Quantity: 13},
{Name: Object2, Version:1, TimeCreated: 1:00, Quantity: 5},
{Name: Object2, Version:2, TimeCreated: 4:00, Quantity: 3},
{Name: Object3, Version:1, TimeCreated: 1:00, Quantity: 2};
]

myArray 用于在页面上创建表格行,每个属性都有表格数据。

我也有一组表行,包括每个对象的最后一个版本以外的所有行。因此tableRows[]将包括<tr>Object1版本 1 和 2 以及Object2版本 1 创建的 s。

我现在需要循环并根据名称和版本从该数组中选择特定对象,以便我可以根据两个属性比较两个数组。两者都是这里的关键,因为版本 1 和 2 以及 Object1 和 Object2 本身并不是特定的。这是我尝试过的方法

for (x in myArray){
  var newArray;

  for (r in myArray){
    newArray = $.grep(tableRows, function(e) {
       return (e.Name == 'Object' + r &&
               e.Version == x);
    })
    //code to assess relation to the other objects in myArray with newArray
  }
}

现在我只是在巩固我的理解,$.grep我想知道我是否超出了它的意图或使用。我什至可以评估这样的两个条件吗?

4

0 回答 0