私は次のようなオブジェクトの配列を持っています。jQuery:別のプロパティ値に応じたオブジェクトプロパティのグループ化
[
{"rel_id": 1,"forward_flag": true,"asset_id":5,},
{"rel_id": 1,"forward_flag": true,"asset_id":8},
{"rel_id": 1,"forward_flag": false,"asset_id":3},
{"rel_id": 2,"forward_flag": true,"asset_id":5,},
{"rel_id": 2,"forward_flag": true,"asset_id":7,},
{"rel_id": 2,"forward_flag": false,"asset_id":9,}
]
私はグループにプロパティrel_id
とforward_flag
に基づいてオブジェクトをしようとしています。 rel_id
とforward_flag
が同じオブジェクトについては、asset_id
の配列を作成して新しいオブジェクトを作成しようとしています。
だから、一度に処理最終的な結果は、私がこのようにjQueryを使って同じことを達成しようとしてい
[
{"rel_id":1,"forward_flag":true,"asset_id":[5,8]},
{"rel_id":1,"forward_flag":false,asset_id:[3]},
...
]
のようになります。
preData.forEach(function(item){
var first = item;
preData.forEach(function(compare){
if(compare.rel_id != first.rel_id || compare.forwardFlag!= first.forwardFlag || compare.asset_id != first.assetid) //to make sure same item is not compared
{
if(compare.rel_id == first.rel_id && compare.forwardFlag == first.forwardFlag)
{
//do something here
}
}
})
})
preData
はオブジェクトの配列です。私は今止まっていて、次に何をすべきか明確ではありません。これを達成するための簡単な方法はありますか?
どのように 'rel_idを移入する
rels
を繰り返す、このために別のオブジェクトを作成する必要があります'と' forward_flag'は同じものになるでしょうブール値と1つは数値です –