我有这个HTML文件来向随机单词API(wordnik)服务器发出GET请求。它返回的内容如下:
[{"id":2998982,"word":"failproof"}]
我只想要"word"
部分但不知道如何访问它。我以为它会data.word
,但它只是打印undefined
。
<!DOCTYPE html>
<html>
<head>
<title>Random Word Generator</title>
</head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js">
</script>
<script>
function generateRandomWord() {
var randomWordURL = "http://api.wordnik.com:80/v4/words.json/randomWords?hasDictionaryDef=true&minCorpusCount=0&minLength=5&maxLength=15&limit=1&api_key=APIkey";
$.ajax({
type: "GET",
url: randomWordURL,
dataType: "jsonp",
jsonpCallback: 'displayRandomWord'
});
}
function displayRandomWord(data) {
document.getElementById("randomword").innerHTML=data.word;
}
</script>
<body onload="generateRandomWord()">
<div id="randomword"></div>
</body>
</html>
&#13;
答案 0 :(得分:3)
似乎数据是一个数组,因此要访问它,您应该data.word
替换data[0].word
希望这有帮助!
答案 1 :(得分:0)
在您的JSON示例中,您有对象数组而不是对象。如果您的代码总是在此数组中获得一个元素,并且您想要提取其word
属性,则可以将其更改为:
function displayRandomWord(data) {
document.getElementById("randomword").innerHTML=data[0].word;
}