JSON和Javascript - 无法从JSON中提取嵌套数据

时间:2016-05-12 14:46:10

标签: javascript json api

好的,所以我试图循环并拉出标题"在使用javascript的API中,API在控制台中看起来像这样:

Object {status: "ok", data: Array[28]}
data:Array[28]
    0:Object    
        age_restricted:true
        always_on_menu:false
        box_limit:"2"
        id:"1907b434-f71d-11e5-887e-02787aad01f3"
        is_for_sale:true
        is_vatable:true
        list_price:"7.95"
        sku:"AP-ACH-WIN-WHI-06-P"
        title:" Camino Real Blanco Rioja"

Javascript如下:

$.getJSON("URL", callbackData);

function callbackData(data) {
    for (var key in data) {
        var obj = data[key];
        for (var prop in obj) {
             if (obj.hasOwnProperty(prop)) {
            document.write(JSON.stringify(prop));
        }
    }
}
}

但我得到的只是Key,所以在这种情况下0出来了。

有什么想法吗?

2 个答案:

答案 0 :(得分:2)

你试过这个吗?

document.write(JSON.stringify(obj[prop]));

答案 1 :(得分:0)

数据是一个数组,因此迭代它的正确方法是使用forEach。无论如何,您想要获得的值是obj[prop]

function callbackData(data) {
    data.forEach(function(obj) {
        for (var prop in obj) {
             if (obj.hasOwnProperty(prop)) {
                 document.write(JSON.stringify(obj[prop]));
             }
        }
    });
}