首页 > 编程语言 > 详细

将数组里某个属性相同的对象合并成一个数组

时间:2020-05-19 21:05:05      阅读:95      评论:0      收藏:0      [点我收藏+]
 1 var array=[
 2         {id:1,name:小明,sex:},
 3         {id:2,name:小刚,sex:},
 4         {id:3,name:小红,sex:},
 5         {id:4,name:小花,sex:},
 6         {id:5,name:小甜甜,sex:},
 7     ]
 8     var obj={},newArr=[];
 9     array.forEach(function(item,suffix){
10         //根据对象的属性是唯一的,将值作为对象的属性名
11         if(!obj[item.sex]){
12             var arr=[];
13             arr.push(item);
14             newArr.push(arr);
15             obj[item.sex]=item;
16         }else{
17             newArr.forEach(function(value,index){
18                 //如果已经存在  就循环新组的值将值插入属性相同的数组里   为了防止重复添加   只要和第一个比较就可以了
19                 if(value[0].sex==item.sex){
20                     value.push(item)
21                 }
22             })
23         }
24     })
25     console.log(obj);
26     console.log(newArr)

 

将数组里某个属性相同的对象合并成一个数组

原文:https://www.cnblogs.com/yihengbaobei/p/12919195.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!