该方法是将数组对象里的对象属性进行分类,最终出输一个二维的数据格式,item.roomName 是返回所需要的分组的对象。
this.sortRoomName = function (sortData) {
const groupBy = (array, f) => {
let groups = {};
array.forEach(o => {
let group = JSON.stringify(f(o));
groups[group] = groups[group] || [];
groups[group].push(o);
});
return Object.keys(groups).map((group) => {
return groups[group];
})
};
const sorted = groupBy(sortData, (item) => {
return item.roomName; // 返回需要分组的对象;
})
return sorted;
}