【发布时间】:2016-04-20 07:47:34
【问题描述】:
我有一个对象数组如下:
[ { user: 'Abc', badge: [ 6 ] },
{ user: 'PQR', badge: [ 7 ] },
{ user: 'PQR', badge: [ 1 ] },
{ user: 'PQR', badge: [ 2 ] },
{ user: 'XYZ', badge: [ -5 ] } ]
我使用以下 javascript 代码创建了这个对象:
for (var j = 0; j < aR.length; j++)
{
if (typeof aR[j] != 'undefined' && aR[j] != null)
{
recievedUser =aR[j].get("receiver").id;
badge = aR[j].get("rBTypes");
if(recievedUser!= undefined && badge != undefined )
result.push({'user': recievedUser, 'badge': badge});
}
}
现在我想像这样合并这个数组:
[ { user: 'Abc', badge: [ 6 ] },
{ user: 'PQR', badge: [ 7 ,1,2] },
{ user: 'XYZ', badge: [ -5 ] } ]
我该怎么做?
我也想找到拥有最多徽章的用户?
【问题讨论】:
-
提示:将结果重组为
{ Abc: [6], PQR: [7,1,2], ... } -
这对我来说没问题!
-
{ user: 'PQR', badge: [ 7 ],[1],[2] }不是有效的对象字面量
标签: javascript object merge associative-array