weixin_33713707 2018-03-23 15:53 采纳率: 0%
浏览 79

为什么无法遍历JSON数据?

我是一个真正的JSON菜鸟。

在下面的console.log(obj.id);代码中,控制台中什么也没有返回。我需要了解为什么吗?我希望它会基于JSON数据在控制台中记录两件事。

JS:

var matchTeamAStatsJSON

$.ajax({ 
  type: 'GET', 
  url: 'http://www.website.com/apipathblahblahblah',
  data: { get_param: 'value' }, 
  dataType: 'json',        
  success: function (data) {
    matchTeamAStatsJSON = data;
    console.log(matchTeamAStatsJSON);
    for(var i = 0; i < matchTeamAStatsJSON.length; i++) {
      var obj = matchTeamAStatsJSON[i];
      console.log(obj.id);
    }
  }
})

JSON:

{
"records": [
    {
        "id": "recGWUWqwjUNLpekA",
        "fields": {
            "playerSprints": 12,
            "playerDistanceCovered_km": 6.23
        },
        "createdTime": "2018-03-22T18:16:56.000Z"
    },
    {
        "id": "recx5pMFpxnRwR4La",
        "fields": {
            "playerSprints": 12,
            "playerDistanceCovered_km": 6.23
        },
        "createdTime": "2018-03-19T11:35:11.000Z"
    }
]
}
  • 写回答

2条回答 默认 最新

  • DragonWar% 2018-03-23 16:01
    关注

    If the JSON example you posted below is the response from the GET request, data is equal to "records" which doesn't have an and "id" property. However, each instance of the array it contains does.

    You need to get inside that array first and then get the "id" property of each element: console.log(obj.records[i].id) should get you want.

    Hope this helps!

    评论

报告相同问题?