如何存储从异步函数返回的数据

Afa*_* Rk 0 javascript async-await

async function getDetails(country){
  let response = await fetch(`https://restcountries.com/v2/name/${country}`);
  let [data]= await response.json();
  return data
}

let portugal = getDetails('portugal');
Run Code Online (Sandbox Code Playgroud)

有没有办法在 JavaScript 中存储从异步函数返回的数据?

我知道,异步函数总是会返回一个承诺,并且可以使用“.then(func)”对数据做另一件事。但是我怎样才能将它存储在变量中并稍后使用呢?

kvo*_*oak 6

是的你可以。

let portugal = await getDetails('portugal');
Run Code Online (Sandbox Code Playgroud)

await如果您之前不使用关键字getDetails(),您将得到您正确指出的承诺,而不是数据结果。

请注意,await getDetails()仅在函数内部调用时才有效async