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

作者: 前端很忙 | 来源:发表于2017-10-19 17:08 被阅读25次

    最近项目里遇到一个处理数据的问题,返回的数据很多都是一个类别下的子数据,根据名称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://www.haomeiwen.com/subject/nswuuxtx.html