提取数组中相同类别数据,组成新的数组

最近项目里遇到一个处理数据的问题,返回的数据很多都是一个类别下的子数据,根据名称key进行分类,下面是一个demo,如有不足之处,期待交流。

原始数据

处理方法

function dataDeal(data){
	var listArr = [];
	data.forEach(function(el,index){
		for(var i=0;i<listArr.length;i++){
			// 对比相同的字段key,相同放入对应的数组
			if(listArr[i].Company == el.company){
				listArr[i].listInfo.push({
					number: el.number,
					name: el.name,
					date: el.date
				});
				return;
			}
		}
		// 第一次对比没有参照,放入参照
		listArr.push({
			Company: el.company,
			listInfo: [{
				number: el.number,
				name: el.name,
				date: el.date
			}]
		});	
	});
	return listArr;
}

效果图

处理后的数据

此方法只是针对本案例的处理方式,可依照个人需求进行定制,希望能帮到有需要的朋友。

https://github.com/zhangqian00/

这是我的github地址,有一些我自己写的一些关于require、angular、vue等等的小项目,最近在学习Nodejs,非常欢迎大牛们来指点,交流,分享。

前端很忙
微信搜索公众号:前端很忙

获取更多干活分享,欢迎来搞!


版权声明:本文为Bs__Q原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。