Javascript 记录AJAX/JSON请求时,Console.log语句显示未定义
这是我第一次使用AJAX,我确信其他人也有这个错误,但是经过大量的尝试和搜索,我找不到答案。我相信这很简单。我非常感谢您的帮助Javascript 记录AJAX/JSON请求时,Console.log语句显示未定义,javascript,json,ajax,Javascript,Json,Ajax,这是我第一次使用AJAX,我确信其他人也有这个错误,但是经过大量的尝试和搜索,我找不到答案。我相信这很简单。我非常感谢您的帮助 // create variable for JSON request var ourRequest = new XMLHttpRequest(); // get request for tested JSON link ourRequest.open('GET', 'http://api.fixer.io/latest'); ourRequest.onload =
// create variable for JSON request
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[1]);
};
ourRequest.send();
ourData
是一个JavaScript对象,而不是数组
我认为通过ourData[1]
你想要得到日期,因此你需要做ourData.date
或ourData['date']
//为JSON请求创建变量
var ourRequest=new XMLHttpRequest();
//获取已测试JSON链接的请求
我们的请求。打开('GET','https://api.fixer.io/latest');
ourRequest.onload=函数(){
var ourData=JSON.parse(ourRequest.responseText);
log(ourData['date']);
console.log(ourData.date);
};
ourRequest.send()代码>因为respoose是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();
因此,当我在浏览器中运行并检查控制台时,它显示为未定义。我正在使用ChrometheAPI返回一个对象{“base”:“EUR”,“date”:“2017-02-24”,…
,而不是数组。->,这是一个跨源请求吗?什么是。responseText
?什么是。status
?什么是我们的数据
(不是我们的数据[1]
)?非常感谢大家的帮助!