根据type值将如下结构的数据归类到一个对象中给定数据如下: const origin = [ {type: 'b', value: 'A'}, {type: 'a', value: 'B'}, {type: 'c', value: 'C'}, {type: 'b', value: 'A'}, {type: 'b', value: 'B'}, {type: 'b', value: 'C'}, {type: 'c', value: 'A'}, {type: 'b', value: 'B'}, {type: 'a', value: 'A'}, {type: 'c', value: 'C'}, {type: 'a', value: 'A'} ] 期望转换后的对象结果如下: { b: [ { type: 'b', value: 'A' }, { type: 'b', value: 'A' }, { type: 'b', value: 'B' }, { type: 'b', value: 'C' }, { type: 'b', value: 'B' } ], a: [ { type: 'a', value: 'B' }, { type: 'a', value: 'A' }, { type: 'a', value: 'A' } ], c: [ { type: 'c', value: 'C' }, { type: 'c', value: 'A' }, { type: 'c', value: 'C' } ] }
时间: 2023-09-07 14:13:35 浏览: 67
可以使用reduce方法来实现对数据的归类,具体代码如下:
```
const origin = [
{type: 'b', value: 'A'},
{type: 'a', value: 'B'},
{type: 'c', value: 'C'},
{type: 'b', value: 'A'},
{type: 'b', value: 'B'},
{type: 'b', value: 'C'},
{type: 'c', value: 'A'},
{type: 'b', value: 'B'},
{type: 'a', value: 'A'},
{type: 'c', value: 'C'},
{type: 'a', value: 'A'}
];
const result = origin.reduce((acc, cur) => {
if (acc[cur.type]) {
acc[cur.type].push(cur);
} else {
acc[cur.type] = [cur];
}
return acc;
}, {});
console.log(result);
```
输出结果:
```
{
a: [
{ type: 'a', value: 'B' },
{ type: 'a', value: 'A' },
{ type: 'a', value: 'A' }
],
b: [
{ type: 'b', value: 'A' },
{ type: 'b', value: 'A' },
{ type: 'b', value: 'B' },
{ type: 'b', value: 'C' },
{ type: 'b', value: 'B' }
],
c: [
{ type: 'c', value: 'C' },
{ type: 'c', value: 'A' },
{ type: 'c', value: 'C' }
]
}
```
阅读全文