//处理数组的方法
function mapArray(target) {
let obj = {};
result = [];
target.map((item) => {
let key = item.key;
//如果有这个key,就push一个对象
if (obj[key]) {
obj[key].push(item);
//如果没有这个key,就把对象设置成数组格式(方便后面push进去)
} else {
obj[key] = [item];
}
});
//根据obj中有几个对象,挨个push进去,组成最后的数组
for (const key in obj) {
const element = obj[key];
result.push(element);
}
return result;
}
console.log(mapArray(arr )); //调用方法,打印的结果如下:
[
[{
key: "a",
value: 1,
},{
key: "a",
value: 2,
}],
[{
key: "b",
value: 3,
},{
key: "b",
value: 4,
}],[{
key: "c",
value: 5,
}],
]