使用数字访问动态内容

时间:2012-05-10 10:37:32

标签: javascript jquery json coffeescript wikipedia-api

我正在使用维基百科API并且对我得到的结果有疑问。

{"query":{
    "pages":{
        "48636":{
            "pageid":48636,

我不知道拨打电话时ID是多少,如何访问48636?

if gon.activateWiki
  $(gon.keywords).each (index, element) ->
    console.log element.name
    $.getJSON( 'http://sv.wikipedia.org/w/api.php?action=query&format=json&prop=revisions%7Clinks%7Cimages%7Ccategories&rvprop=content&titles=' + element.name + '&callback=?' , (data)  ->
      console.log data.query.pages
    )

2 个答案:

答案 0 :(得分:1)

您可以像数组一样访问它:

console.log(data.query.pages["48636"]);

更新

要从对象的未知属性获取值,您需要使用for..in语句。或者您可以使用slice方法并将对象转换为数组:

var pages = Array.prototype.slice.call(data.query.pages);

答案 1 :(得分:1)

你想要可靠的旧Object.keys

firstKey = Object.keys(data.query.pages).shift()
lastKey = Object.keys(data.query.pages).pop()
nthKey = Object.keys(data.query.pages)[n-1]

firstPage = data.query.pages[firstKey]
lastPage = data.query.pages[lastKey]
nthPage = data.query.pages[n-1]