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

最近项目里遇到一个处理数据的问题,返回的数据很多都是一个类别下的子数据,根据名称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;
}
效果图
处理后的数据

公众号:前端很忙

做一个喜欢分享的前端开发者!

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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容