我正在尝试从Goodreads的API获取数据以显示图书的评分,但我遇到了障碍。
从这个网址(https://www.goodreads.com/book/review_counts.json?isbns=9781630586799&key=YOUR_KEY&callback=myCallback
),我正在收到来自Goodreads的以下JSONP数据:
myCallback([{
"id":22571333,
"isbn":"163058679X",
"isbn13":"9781630586799",
"ratings_count":657,
"reviews_count":2288,
"text_reviews_count":138,
"work_ratings_count":835,
"work_reviews_count":2596,
"work_text_reviews_count":155,
"average_rating":"3.93"
}])
这是我的javascript:
function myCallback(result) {
document.getElementById('goodreads-rating').innerHTML = result.average_rating;
}
var scriptTag = document.createElement('script');
scriptTag.src = "https://www.goodreads.com/book/review_counts.json?isbns=9781630586799&key=YOUR_KEY&callback=myCallback";
document.getElementsByTagName('head')[0].appendChild(scriptTag);
我想要检索的数据是average_rating
。但是,输出到HTML的是“未定义”一词。
我猜我的问题与我如何导航数组/对象有关。
有谁知道我做错了什么?
答案 0 :(得分:0)
以下解决了我的问题:
result[0].average_rating;
我现在意识到我试图在数组中导航,因此需要引用索引号[0]
。感谢@dandavis的回答!