从json对象列表中获取值

时间:2017-11-07 10:11:05

标签: javascript json

我有这种json格式。

{  
"cod":"200",
"message":0.0027,
"cnt":40,
"list":[  
       {  
       "dt":1510045200,
       "main":{  
              "temp":281.46
              }
       },
       {
       "dt":....
       ....
       }
       ]
}

使用javascript和ajax请求,我试图从data.list中的每个对象获取dt和temp的值但是没有结果..

 $.ajax({
        url: "",
        type: "GET",
        success: function (data) {
            //number of objects in data.list array
            var numOfObjects = data.list.length; 
            for (var i = 0; i < numOfObjects; i++){
                if(data.list[i].hasOwnProperty('td')){
                    console.log(data.list[i].['td']);
                }
                else if(data.list[i].['main'].hasOwnProperty('temp')){
                    console.log(data.list[i].['main'].['temp']);
                }
            }
        }
    });

1 个答案:

答案 0 :(得分:1)

您不需要在数组键之间放置.

例如:data.list[i].['dt']不正确,data.list[i]['dt']是正确的。

$.ajax({
    url: "",
    type: "GET",
    success: function (data) {
        //number of objects in data.list array
        var numOfObjects = data.list.length; 
        for (var i = 0; i < numOfObjects; i++){
            if(data.list[i].hasOwnProperty('dt')){
                console.log(data.list[i]['dt']);
            }
            else if(data.list[i]['main'].hasOwnProperty('temp')){
                console.log(data.list[i]['main']['temp']);
            }
        }
    }
});