获取 JSON 对象标题

Getting JSON object titles

本文关键字:标题 对象 JSON 获取      更新时间:2023-09-26

我试过在这里搜索,但我无法弄清楚。

我正在尝试做一个 each 函数来抓取对象的每个标题,我的 json 是。

{"games":{
    "featured": [
        {
            "game_id": "2"
        },
        {
            "game_id": "15",
        }
    ],
    "popular": [
        {
            "game_id": "2"
        }
    ],
    "new": [
        {
            "game_id": "2",
        },
        {
            "game_id": "15",
        },
        {
            "game_id": "1",
        }
    ]
}}

我的JS是:

$.getJSON("apilink", 
    function(data) {
        $.each(data.games, function(i,category){
            alert(category[0]);
        });
});

我显然试图在特色、流行和新之间轮换。我做错了什么?谢谢!

您可以使用嵌套$.each()调用在以下位置迭代每个对象数组 category : 属性名称 "games" 属性 data

var data = {
  "games": {
    "featured": [{
      "game_id": "2"
    }, {
      "game_id": "15",
    }],
    "popular": [{
      "game_id": "2"
    }],
    "new": [{
      "game_id": "2",
    }, {
      "game_id": "15",
    }, {
      "game_id": "1",
    }]
  }
};
$.each(data.games, function(i, category) {
  console.log(i + ":");
  $.each(category, function(key, obj) {
    console.log(obj)
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js">
</script>

我想

你想成为特色流行吗?你已经有了答案,第一个参数 i 返回对象的键,其中第二个参数返回值,即类别

    $.each(data.games, function(i, category) {
        // category is what you are looking for
        alert(JSON.stringify(category));
        //or
        alert(JSON.stringify(data.games[i]));
    });

希望有帮助