标签:groupby code 数字 div log 数据过滤 cat define length
var datalist = [{ "name": ‘张三‘, "type": 1 }, { "name": ‘张五‘, "type": 1 }, { "name": ‘张六‘, "type": 2 }, { "name": ‘张七‘, "type": 5 }, { "name": ‘张八‘, "type": 0 }] var resList =this.groupByList(datalist); //如果中间有相差的,则强制建数据 console.log(resList); console.log(resList[0]); console.log(resList[3]);
调用的函数
//根据某个数字类型的字段对数组分组 groupByList(datalist){ let resList = [];//分组结果 for (var i = 0; i < datalist.length; i++) { var thisindex = parseInt(datalist[i].type);//分组的索引 if (resList[thisindex] != undefined) {//如果数组中有值,则添加第二条数据 resList[thisindex] = resList[thisindex].concat(datalist[i]); } else {//新建数组 resList[thisindex] = []; resList[thisindex][0] = datalist[i]; } } return resList },
这个方法只能对数组类型的字段进行分组,对于文字暂时没考虑,可以根据需要自行调整
思路是:先循环数组,然后第一次添加的数组加入值,然后第二次再次分入这个组里,进行插入的,最后取值
这个操作类似于分页,只不过分页是直接相加,这个把数据过滤了然后再填入
个人笔记,不当之处欢迎指正,转载请注明出处
标签:groupby code 数字 div log 数据过滤 cat define length
原文地址:https://www.cnblogs.com/hkzw/p/13598260.html