记录AJAX / JSON请求时,Console.log语句显示为undefined

时间:2017-02-26 12:36:12

标签: javascript json ajax

这是我第一次使用AJAX,我确信其他人都有这个错误,但经过大量的尝试和搜索,我找不到答案。我确信这很简单。我很感激任何帮助。

<!DOCTYPE html>
<html>
<meta charset="utf-8">
<body>


<script src="formBuilder1.js"></script>

<select id="Medium"></select>
</body>
</html>

2 个答案:

答案 0 :(得分:0)

ourData是一个JavaScript对象,而不是数组。

我认为ourData[1]您希望获得日期,因此您需要执行ourData.dateourData['date']

// create variable for JSON request
var ourRequest = new XMLHttpRequest();

// get request for tested JSON link
ourRequest.open('GET', 'https://api.fixer.io/latest');
ourRequest.onload = function () {
    var ourData = JSON.parse(ourRequest.responseText);
    console.log(ourData['date']);
    console.log(ourData.date);
};

ourRequest.send();

答案 1 :(得分:0)

由于respoonse在Json中,因此您可以使用以下代码并使用您喜欢的任何方式

var ourRequest = new XMLHttpRequest();

// get request for tested JSON link
ourRequest.open('GET', 'http://api.fixer.io/latest');
ourRequest.onload = function () {
    var ourData = JSON.parse(ourRequest.responseText);
    console.log(ourData['date']);
    console.log(ourData.date); //or you can write in this format
    console.log(ourData['base']);
    console.log(ourData.base);
    console.log(ourData['rates']);
    console.log(ourData.rates);
    console.log(ourData['rates']['AUD']);
    console.log(ourData['rates'].AUD);
};

ourRequest.send();