2020-08-21

let arr =[    {id: "1", val: "红色"},

                  {id: "1", val: "蓝色"},

                  {id: "1", val: "紫色"},

                  {id: "2", val: "版本一"},

                  {id: "2", val: "版本二"},

                  {id: "2", val: "版本三"}

              ]

根据键id的不同,重新组合成为一个二维数组,所有id为1的在一个数组,所有id为2的在一个数组,以此类推。。。。
不多说,直接看结果:


如果是自己想要的 ,继续往下看代码:


// 打印结果

consol.log("新数组: ", this.detaDeal(arr))

 // 处理json数据方法,根据g_style分类

    dataDeal(data) {

        var listArr = [];

        data.forEach(function(el,index){

            for(var i=0;i<listArr.length;i++){

                // 对比相同的字段key,相同放入对应的数组

                if(listArr[i].id == el.id){

                    listArr[i].listInfo.push({

                        id: el.id,

                        val: el.val,

                    });

                    return;

                }

            }

            listArr.push({

                id: el.id,

                listInfo: [{

                    id: el.id,

                    val:el.val,

                }]

            }); 

        });

        return listArr;

    },


到这里就结束了,有更好的方法记得分享哦

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