【发布时间】:2018-01-31 15:36:59
【问题描述】:
我目前正在学习如何使用 ES8 的 fetch、async 和 await 我目前有这段代码可以工作:
const url = "https://api.icndb.com/jokes/random";
async function tellJoke() {
let data = await (await fetch(url)).json();
return data.value.joke;
}
tellJoke().then(data => console.log(data));
控制台:
"Chuck Norris can dereference NULL."
但是我发现了一个使用箭头函数的 sn-p,问题是我不知道如何返回我在当前示例中的值。
片段:
const fetchAsync = async () =>
await (await fetch(url)).json()
如果这不是最佳做法,请告诉我,也欢迎进一步阅读。
【问题讨论】:
-
最佳实践是仅在需要时使用箭头函数。只需使用您的工作代码即可:-)
-
顺便说一句,
async/await是 ES8 而不是 ES7 的一部分 -
@Bergi 是真的,忘记检查 MDN 和我发现的每个示例都提到了 ES7。
标签: javascript async-await fetch-api arrow-functions ecmascript-2017