所以我有一个对象数组,其中许多具有重复的键属性,因为有些是动态创建的复制,其中一些非特定字段可能会发生变化。
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
我想知道我是否超出了它的意图或使用。我什至可以评估这样的两个条件吗?