Javascript ES6获取返回语句错误
以下内容从返回“未定义”X 2: countriesUrl是一个对象数组Javascript ES6获取返回语句错误,javascript,asynchronous,fetch-api,Javascript,Asynchronous,Fetch Api,以下内容从返回“未定义”X 2: countriesUrl是一个对象数组 console.log(countriesURL2); console.log(carMakesUrl2); function getDataFromJSON(url){ var dataJSON; fetch(countriesUrl).then(function(data) { if (data
console.log(countriesURL2);
console.log(carMakesUrl2);
function getDataFromJSON(url){
var dataJSON;
fetch(countriesUrl).then(function(data) {
if (data.ok) {
data.json().then(function(data) {
dataJSON = data;
return dataJSON;
});
}
});
return dataJSON;
}
function displayData(){
var countriesURL2 = getDataFromJSON(countriesUrl);
var carMakesUrl2 = getDataFromJSON(carMakesUrl);
console.log(countriesURL2);
console.log(carMakesUrl2);
}
displayData();
为什么返回的“dataJSON”未定义?Fetch返回一个承诺,因此
then
函数中的所有内容都是异步运行的dataJSON
在您的承诺中设置之前返回