ChartJS 减少基于属性的嵌套对象javascript [已关闭]

ovfsdjhp  于 2022-11-06  发布在  Chart.js
关注(0)|答案(1)|浏览(125)

已关闭。此问题需要details or clarity。当前不接受答案。
**想要改进此问题吗?**通过editing this post添加详细信息并阐明问题。

两个月前关门了。
Improve this question
我有一个这样的嵌套对象

const data = [
  { id: '1', description: 'desc 1', 
   data : [
  { id: '5', description: 'desc',  number :1 },
  { id: '4', description: 'descip',  number :2 } ],
  { id: '2', description: 'desc 2', 
   data: [
  { id: '5', description: 'desc', number: 3 },
  { id: '4', description: 'descip', number: 4 },
  { id: '2', description: 'descipr', number: 6 }
   ]},
];

我希望这个对象像这样使用reduce方法并将数据传递给chartjs

data =[
 desc :  { id: '5', description: { 'desc1' ,'desc2'},  number :{1,3}  },
 descip: { id: '4', description: { 'desc1' ,'desc2'},  number :{2,4} },
 descipr: { id: '2', description: { 'desc2'},  number :{6} }

]

请提供任何帮助

wlwcrazw

wlwcrazw1#

那么一个基本的groupBy函数呢?

const data = [
  { id: '1', description: 'desc 1', number: 1 },
  { id: '2', description: 'desc 2', number: 2 },
  { id: '3', description: 'desc 2', number: 3 },
  { id: '4', description: 'desc 1', number: 4 },
  { id: '5', description: 'desc 4', number: 5 },
];

const grouped = data.reduce((p, n) => ({
  ...p,
  [[n.description]]: (p[n.description] ?? []).concat(n)
}), {});

console.log(grouped);

相关问题