1

私の他のスレッドの別のユーザーが、 JSON オブジェクトへのアクセス方法の説明に関して、ここに別の質問を投稿することを提案しました。私が使用しているコードは次のとおりです。

<script src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
<script>
$(function () {
    $.getJSON(
       "https://api.guildwars2.com/v1/wvw/matches.json",
        function (data) {
            $("#reply").html(JSON.stringify(data));
            // or work with the data here, already in object format
        });
});
</script>

私がJSON コードでやろうとしているのは、指定された を検索しworld_idmatch_id. 私は JavaScript に非常に慣れていないので、その方法と、上記のコードが提供する文字列化されたデータにアクセスする方法がよくわかりません。

私がこれを行う方法を考え出した方法は、配列を作成して各オブジェクトをその中に格納し、次にループして一致する ID を確認することです。

if(obj[i].red_world_id == 'xxxx' || obj[i].blue_world_id == 'xxxx' || obj[i].green_world_id == 'xxxx') {
    return obj[i].wvw_match_id;
}

私の唯一の問題は、配列を JSON データとして設定する方法がわからないことです。

4

2 に答える 2

1

.このコードを使用 -

$(function() {
    $.getJSON("https://api.guildwars2.com/v1/wvw/matches.json", function(
            data) {
        $("#reply").html(JSON.stringify(data));
        // or work with the data here, already in object format
        var result = [];//for if it has many matches
        for ( var i=0;i<data.wvw_matches.length;i++ ) {
            var obj = data.wvw_matches[i];
            if (obj.red_world_id == 'xxxx' || obj.blue_world_id == 'xxxx'
                    || obj.green_world_id == 'xxxx') {
                result.push(obj.wvw_match_id);
            }
        }
    });
});
于 2013-08-21T18:07:28.673 に答える