javascript - 从 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)
解决方案
您只需要从data
对象的属性而result
不是完整对象中获取数组:
result.data;
而不是返回完整的对象result;
。
推荐阅读
- javascript - 通过 JavaScript 编辑 CSS 会产生左手赋值错误
- gis - BGS/LQM 土拨鼠 - 绘制地下水位
- javascript - React TypeScript中地图的Highcharts自定义数据?
- python - 这些集合操作是什么,为什么它们会给出不同的结果?
- azure-functions - 耐用功能 - 最大活动功能。超时
- jupyter - 如何查看传递给 Jupyter 内核的 Jupyter 消息?
- python - 尝试将记录从数据帧推送到 SQL Server 表
- python - 可视化使用 pandas 数据框创建的二分网络图
- mysql - 在 CREATE TEMPORARY TABLE 上截断不正确的 INTEGER 值
- java - Java 错误:未为 String 类型定义方法 add(String)