【发布时间】:2019-10-22 09:56:47
【问题描述】:
我有一个具有以下结构的对象数组:
let sampleData = [
{ values: { val1: 4, val2: 5, val3: 7 } , time: "1571372233234" , sum: 16 },
{ values: { val1: 5, val2: 3, val3: 1 }, time: "1571372233234" , sum: 9},
{ time: "14354545454", sum: 0},
{ time: "14354545454", sum: 0} }
];
我需要获取数组内每个对象中的每个键并从中形成一个数组。基本上基于所有对象中存在的键进行分组。如果对象没有“值”,它应该在 val1,val2,val3 中返回 0 帮助将不胜感激。
生成的对象数组应如下所示:
result = [
{ name: 'val1', data: [4, 5, 0, 0] },
{ name: 'val2', data: [5, 3, 0, 0] },
{ name: 'val3', data: [7, 1, 0, 0] }
]
到目前为止我已经尝试过:
var result = sampleData.map(value => ({ value: value.values }));
【问题讨论】:
标签: javascript arrays ecmascript-6