我还没有真正研究过jQuery + JSON
。这是我的尝试。
我想从以下数据中提取数据:http://ddragon.leagueoflegends.com/cdn/4.14.2/data/en_US/rune.json
这是League Of Legends Runes的数据数组。我希望将name
,description
,image -> w y x
和stats
用于我的项目中。
我目前有这个:
$(document).ready(function() {
$.getJSON("http://ddragon.leagueoflegends.com/cdn/4.14.2/data/en_US/rune.json", function(data){
$.each(data, function (index, value) {
console.log(value[5001]); //<--- this the ID for one of the runes, to test if it is working
});
});
});
这是输出:
正如您所看到的,显示了name
,description
,image -> w, x, y
和stats
,如何将它们放入控制台(用于镀铬)中?
希望你们能提供帮助。
答案 0 :(得分:3)
你真的很接近得到你需要的东西。问题是$ .each循环在获得你想要的东西之前循环遍历几个JSON键/值。
通过点表示法访问JSON对象,您可以在每个级别向下导航,如下所示。希望这会有所帮助。
$.getJSON("http://ddragon.leagueoflegends.com/cdn/4.14.2/data/en_US/rune.json", function(response){
console.log(response); // Has keys for type, version, data, basic
// Data is an array of elements
console.log(response.data[5001]);
// Each entry has properties you access like this.
console.log(response.data[5001].name);
console.log(response.data[5001].description);
console.log(response.data[5001].image.x);
console.log(response.data[5001].stats);
});
修改
要遍历数据数组,您需要在响应数据上执行$ .each。
$.each(response.data, function (index, entry) {
console.log(entry.name);
console.log(entry.description);
});