This question already has answers here:
How do I return the response from an asynchronous call?
(42个答案)
4年前关闭。
我有以下代码:
console.log(fetchDemo())以下返回未定义。我需要在另一个函数中使用该值。
网址是“https://rawgit.com/csabapalfi/20d74eb83d0be023205225f79d3e7964/raw/7f08af5c0f8f411f0eda1a62a27b9a4ddda33397/countries.json”
(42个答案)
4年前关闭。
我有以下代码:
function fetchDemo() {
var result;
fetch(countriesUrl).then(function(response) {
return response.json();
}).then(function(json) {
result = json;
});
return result;
}
console.log(fetchDemo());
console.log(fetchDemo())以下返回未定义。我需要在另一个函数中使用该值。
网址是“https://rawgit.com/csabapalfi/20d74eb83d0be023205225f79d3e7964/raw/7f08af5c0f8f411f0eda1a62a27b9a4ddda33397/countries.json”
最佳答案
fetchDemo
正在执行异步工作。因此,要查看结果,您必须链接 promise :
function fetchDemo() {
return fetch(countriesUrl).then(function(response) {
return response.json();
}).then(function(json) {
return json;
});
}
fetchDemo().then(function(result) {
console.log(result);
});
关于javascript - ES6提取函数返回未定义,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39591514/
10-10 07:17