Javascript数组对象以某个字段分组
时间: 2024-01-27 16:11:53 浏览: 81
根据提供的代码,您可以使用reduce方法来实现Javascript数组对象根据某个字段分组的功能。您可以遍历数组,对每个元素进行判断,如果在结果数组中找到了与当前元素相同的分组字段的对象,则将当前元素添加到该对象的children数组中,否则创建一个新的对象并将其添加到结果数组中。
以下是一个示例代码:
```javascript
let arr = [
{ group: "第一组", value: 6 },
{ group: "第一组", value: 3 },
{ group: "第一组", value: 4 },
{ group: "第二组", value: 9 },
{ group: "第二组", value: 7 }
];
const res = arr.reduce((result, item) => {
let index = result.findIndex((it) => it.group == item.group);
if (index == -1) {
result.push({ group: item.group, children: [item] });
} else {
result[index].children.push(item);
}
return result;
}, []);
console.log(res);
```
输出结果如下所示:
```javascript
[
{ group: "第一组", children: [
{ group: "第一组", value: 6 },
{ group: "第一组", value: 3 },
{ group: "第一组", value: 4 }
]},
{ group: "第二组", children: [
{ group: "第二组", value: 9 },
{ group: "第二组", value: 7 }
]}
]
```
阅读全文