从JSON获取特定输出到数组

时间:2018-10-08 13:33:39

标签: javascript arrays json

我在这里获得了一些帮助,这些帮助给了我以下代码:

const result = data.report.data.reduce((r, e) => {
  e.breakdown.forEach(el => {
    let key = "data";
    if(!r[key]) r[key] = []
    r[key].push(...el.counts)
  })
  return r;
}, {})

这给了我这个输出:

Object
data: (3) ["558045", "552531", "522877"]
__proto__: Object

但是,问题是我的图表软件期望以下功能:

["558045", "552531", "522877"]

如何调整上面的代码,实际上只是给我上面的输出?我试图简单地删除行:

let key = "data";

但是它给出了这个错误:

(index):73 Uncaught ReferenceError: key is not defined
    at e.breakdown.forEach.el ((index):73)
    at Array.forEach (<anonymous>)
    at data.report.data.reduce ((index):72)
    at Array.reduce (<anonymous>)
    at window.onload ((index):71)

1 个答案:

答案 0 :(得分:0)

您只需要从对象data的属性result而不是完整对象中获取数组即可:

result.data;

代替返回完整对象result;