跳转到内容
新建笔记

Async/Await

一个Promise对象在操作网络时是异步的,等到返回后再调用回调函数,执行正确就调用then(),执行错误就调用catch(),虽然异步实现了,不会让用户感觉到页面“卡住”了,但是一堆then()、catch()写起来麻烦看起来也乱。有没有更简单的写法?可以用关键字async配合await调用Promise,实现异步操作,但代码却和同步写法类似:

async function get(url) {
let resp = await fetch(url);
let result = await resp.json();
return result;
}
// 用await调用时,直接用传统的try { ... } catch:
async function get(url) {
try {
let resp = await fetch(url);
let result = await resp.json();
return result;
} catch (e) {
// 出错了
}
}