Es6依据某个属性将数组分组:
比方如下数组,将依据sex字段来分组,sex为男的放到一起,为女的放到一起:

次要代码如下:

const array = [{
id: 1,
name: '小明',
sex: '男'
},
{
id: 3,
name: '小红',
sex: '女'
},
{
id: 2,
name: '小刚',
sex: '男'
},
{
id: 4,
name: '小花',
sex: '女'
},
{
id: 5,
name: '小甜甜',
sex: '女'
},
];

function getList(list) {
const map = new Map()
list.forEach((item, index, arr) => {

if (!map.has(item.sex)) {  map.set(    item.sex,    arr.filter(a => a.sex == item.sex)  )}

})
return Array.from(map).map(item => [...item[1]])
}
const list = getList(array)
console.log(array, '分组前');
console.log(list, '分组后');