javascript - api调用后如何获取对象数据?

标签 javascript jquery wikipedia wikipedia-api

我正在运行以下命令:

var myTitle = "Battaglia di Forte Ṭabarsí";
var langList;
var url="https://it.wikipedia.org/w/api.php?action=parse&disablelimitreport=true&format=json&prop=text|langlinks&noimages=true&mobileformat=true&page="+ myTitle + "&callback=?";
$.getJSON(url,function(data){
   jQuery.each(data, function(i, item) {
      langList = item.langlinks;
   });
   console.log(langList);
});

我可以看到该页面具有不同的语言和其他属性,当我在 api 中使用参数 langlinks 时可以获得这些属性,但随后在控制台中我得到:

(6) [Object, Object, Object, Object, Object, Object]

我想访问这些数据,例如另一种语言的标题,并且基本上能够输出任何对象,更具体地说是每个对象的任何属性。

这是一个jsFiddle ,检查控制台。

最佳答案

data 是一个对象。它包含 prase(property),它本身是一个 对象,包含 langLinks(property) :对象的数组

如果您想访问 langLinks 项,请使用索引符号 [ ],如下所示:langLinks[index] 不需要 jQuery.each(d... 您可以通过过滤langLinks

来访问特定语言
data.parse.langlinks.filter(function(val){ return val.lang === 'en'});

访问对象的属性时,使用点或索引表示法 (val.lang)

关于javascript - api调用后如何获取对象数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45314558/

相关文章:

javascript - clearTimeout 在嵌套函数中不起作用

javascript - 为什么第一个程序有效而第二个程序无效?

javascript - 元素的滚动高度给出未定义的值

javascript - jquery调整大小后元素高度不更新

Java正则表达式如何找到父匹配项?

python - 以图形形式表示维基百科

javascript - 展开维基百科类别树的所有类别

javascript - 将 RSS 数据加载到全局变量中

javascript - 使用 JavaScript 检查文件中的字符串

php - 如何将 Angular Datepicker UI 值插入 MySQL 列?