var arr=[ {a:3,b:4}, {a:3,b:7}, {a:5,b:2}, {a:5,b:1} ]
怎样合并为
var arr=[ {a:3,b:4,7}, {a:5,b:2,1} ]
js合并数组相同key值的项 ,急
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
3条回答 默认 最新
danielinbiti 2016-03-22 05:42关注<script> var arr=[{a:3,b:4}, {a:3,b:7}, {a:5,b:2}, {a:5,b:1}]; var tempMap={}; for(var i=0;i<arr.length;i++){ var obj = arr[i]; var key = obj["a"]; if(tempMap[key]!=0&&!tempMap[key]){ tempMap[key]=obj["b"]; }else{ tempMap[key]=tempMap[key]+","+obj["b"]; } } var arrM=[]; for(key in tempMap){ arrM.push({a:key,b:tempMap[key+'']}); } for(i=0;i<arrM.length;i++){ alert(arrM[i]['a']+"---"+arrM[i]['b']);//arrM是结果数组 } </script>本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报