javascript - JSON 数组响应中的总和值

标签 javascript arrays json object addition

我有一个来自 API 响应的 JSON 字符串,如下所示:

{ "legend_size": 1,
  "data": {
    "series": [ "2013-05-01", "2013-05-02" ],
    "values": {
        "Sign Up": {
            "2013-05-05": 10,
            "2013-05-04": 10
         }
     }
  }
}

我想对“注册”对象中的值求和 (10 + 10)。我面临的挑战是键是唯一的,并且大多数演示如何执行此类操作的帖子都显示了示例,其中它只是一个值数组或键是一致的(即 - 每个键都是“值”)。

我应该尝试使用系列数组来循环注册对象吗?

最佳答案

假设您已经将数据解析为对象,则可以使用如下 for 循环:

var json = {
    "legend_size": 1,
    "data": {
        "series": [ "2013-05-01", "2013-05-02" ],
        "values": {
            "Sign Up": {
                "2013-05-05": 10,
                "2013-05-04": 10
            }
        }
    }
};
var sum = 0;
for (x in json.data.values['Sign Up']) {
    sum += json.data.values['Sign Up'][x];
}

基本上,我们浏览 json 数据以获取我们想要的实际数据...即“注册”对象。然后我们使用 for/in 循环遍历该对象拥有的所有键,并将值相加。

关于javascript - JSON 数组响应中的总和值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17015931/

相关文章:

javascript - 根据下拉值显示div

javascript - 水平翻转 .​​getUserMedia 的网络摄像头图像流

javascript - 如何正确计算数组中的出现次数?

c++ - 为什么在同一个类中看不到数组?

javascript - React Native Trouble 循环遍历数组并显示状态图像 url

c# - 反序列化 json 抛出 'Additional text encountered' 错误

java - JavaScript 中的 JSON 对象操作

Javascript JSON.stringify 不采用键索引(关联)数组?

javascript - 将 asm 放入现有的 JS 应用程序中

javascript - 按预定义的顺序对 javascript 数组进行排序