我正在编写一个泛型函数来迭代jSon文件,如下所示:
function test(data, type) {
var k = 0;
for (var i in data) {
k += isNaN(data[i].type) ? 0 : data[i].type;
}
return (k / data.length);
}
其中type
是一个动态值 - 它可以是"步骤","距离"," floor"等
我想要做的是,每当我调用该函数时,它应该找到type
是什么并找到该类型的平均值。有没有办法做到这一点?
jSon文件如下:
[
{
"ActivitySummaryKey": 23323,
"activitycalories": 768,
"caloriesBMR": 1052,
"caloriesOut": 1622,
"distances": 4.14,
"elevation": 24,
"fairlyActiveminutes": 62,
"floors": 8,
"lightlyActiveMinutes": 125,
"marginalCalories": 476,
"sedentaryMinutes": 258,
"steps": 5547,
"veryActiveMinutes": 11,
"createddate": "5/27/2014 12:00:00 AM"
}
]
答案 0 :(得分:1)
如果我理解正确,您需要修改您的函数以使用type
作为属性名称,而不是直接访问.type
处的数据。
function test(data, type) {
var k = 0;
for (var i in data) {
k += isNaN(data[i][type]) ? 0 : data[i][type];
}
return (k / data.length);
}