JSON:解析数组的名称(而不是值)

时间:2013-03-03 12:57:40

标签: javascript arrays json parsing

我有一个从api解析的json数组:

enter image description here

我想解析 pageid

我可以console.log(parsed_json["query"]["pages"]["42743"]["pageid"]),但每次“42743”页面更改。

我如何解析页面下的名称,以便我可以使用:

console.log(parsed_json["query"]["pages"][" >> ID << "]["pageid"])

1 个答案:

答案 0 :(得分:2)

假设pages对象只能拥有那个,可枚举的密钥,你可以这样做;

var pages = parsed_json.query.pages;
var page;

for (var x in pages) {
    if (pages.hasOwnProperty(x)) {
        page = x;
    }
}

// use pages[page].pageid;

...这枚举了属性,并记录了枚举的最后一个属性。第一个break或者你需要的任何东西。对于笑声,这可能在ES5中更清晰:

var pages = parsed_json.query.pages;
var page = Object.keys(pages)[0];

// use pages[page].pageid;