JSON数据分组

function GroupBy(arr,key) {
        var obj = {};
        for (let i = 0; i <arr.length; i++) {
            if (obj[arr[i][key]]) {
                obj[arr[i][key]].push(arr[i]);
            } else {
                obj[arr[i][key]] = new Array();
                obj[arr[i][key]].push(arr[i]);
            }
        }
        return obj;
    }

例如:

var data=[{
    "ID": "1",
    "Name": "张三",
    "Gender": "男",
    "Birthday": "2020-03-24 00:00:00"
}, {
    "ID": "2",
    "Name": "李四",
    "Gender": "男",
    "Birthday": "2020-03-23 00:00:00"
}, {
    "ID": "3",
    "Name": "王五",
    "Gender": "男",
    "Birthday": "2020-03-20 00:00:00"
}, {
    "ID": "4",
    "Name": "赵六",
    "Gender": "男",
    "Birthday": "2020-03-28 00:00:00"
}, {
    "ID": "5",
    "Name": "田七",
    "Gender": "女",
    "Birthday": "2020-03-25 00:00:00"
}];
console.log(GroupBy(data,"Gender"))
//输出{男: Array(4), 女: Array(1)}

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