从封装的json中获取价值

时间:2015-12-07 13:08:16

标签: javascript json dojo

我有以下JSON文件:

[

{
    "AVG_VALUE" : "2540", 
    "MAX_VALUE" : "2540",
    "SUM_VALUE" : "2540",
    "MIN_VALUE" : "2540",
    "METRICID" : "100248060212",
    "START" : "1449216120000",
    "STARTTIME" : "09:02"
}
,
{
    "AVG_VALUE" : "2624", 
    "MAX_VALUE" : "2708",
    "SUM_VALUE" : "5248",
    "MIN_VALUE" : "2540",
    "METRICID" : "100248060219",
    "START" : "1449216120000",
    "STARTTIME" : "09:02"
}
]

但我不知道如何从中获取价值?我正在使用dojo工具包,我用这段代码生成我的文件:

var stream = dojo.xhrGet({
            url : self.jsonFile,
            content : {
                startTime : 1449136661084,
                endTime :   1449482261084,
                interValMillis : (interval * 1000),
                metricid : 100248060219
            },
            handleAs : "json",
            sync : true,
            load : function(response, ioArgs) {
                self.data = response;
                self._metricIds = _metricIds;
                self._params = _params;
                self.convertData(self);
                console.log("ok:"+response);
                data = response;
            }
        });

所以最后所有的值现在都在我的响应变量中...但是我怎么能对它进行处理,以获得第一个AVG_VALUE?

2 个答案:

答案 0 :(得分:0)

Response是一个对象数组。您可以像response[0]['AVG_VALUE']response[0].AVG_VALUE一样对其进行处理。

答案 1 :(得分:0)

JSON数据存储在对象数组中,因此您需要遍历它们以获取包含在其中的值..

for (var i = 0; i < response.length; i++) {
var jsonData = response[i];
jsonData['AVG_VALUE'] 
}

以上将返回与变量AVG_VALUE对应的所有值 - 或者,如果您只想要第一个,则可以使用:

 var jsonData = response;
jsonData[0]['AVG_VALUE']