以下是一个示例代码,它演示了如何按id分组数组对象:
// 数组对象
const data = [
{ id: 1, name: 'Alice' },
{ id: 2, name: 'Bob' },
{ id: 1, name: 'Charlie' },
{ id: 3, name: 'David' },
{ id: 2, name: 'Eve' }
];
// 按id分组的结果对象
const groupedData = {};
// 遍历数组对象
data.forEach(obj => {
const { id, name } = obj;
// 如果id不存在于分组结果对象中,则创建一个空数组作为该id的值
if (!groupedData[id]) {
groupedData[id] = [];
}
// 将当前对象添加到对应id的数组中
groupedData[id].push({ id, name });
});
console.log(groupedData);
上述代码将输出以下结果:
{
1: [
{ id: 1, name: 'Alice' },
{ id: 1, name: 'Charlie' }
],
2: [
{ id: 2, name: 'Bob' },
{ id: 2, name: 'Eve' }
],
3: [
{ id: 3, name: 'David' }
]
}
在这个示例中,我们使用forEach方法遍历数组对象。对于每个对象,我们首先提取id和name属性。然后,我们检查groupedData对象中是否存在与当前id相对应的键。如果不存在,我们创建一个空数组作为该id的值。最后,我们将当前对象添加到与id相对应的数组中。
下一篇:按ID分组填充区间之间的值