【发布时间】:2018-06-04 23:20:33
【问题描述】:
如何对 json 数据集中的值求和?
我正在尝试对字段 TaxAmount 的数据集中的所有值求和:
var url = "https://...........";
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function () {
if (xhr.readyState == 4) {
var data = JSON.parse(xhr.response);
console.log(data);
}
};
xhr.open("GET", url, true);
xhr.send();
这是data的快照:
如果我们检查上面返回的数组中的这些项目之一:
{
[functions]: ,
__proto__: { },
AccountID: null,
AccountUID: null,
AgentCost: 0,
Amount: 24.3,
AccountsItemID: null,
TaxAmount: 2.01
}
我尝试对所有元素求和 TaxAmount,如下所示:
var totalTaxAmount = data.reduce(function(pv, cv) {
pv += cv["TaxAmount"];
}, {});
也许我需要data.forEach.reduce?
如何对 json 数据集中的值求和?
【问题讨论】:
-
你需要从传递给
reduce的函数中返回pv。 -
为什么我们每次都返回pv,而不是只返回ONCE?
标签: javascript json xmlhttprequest