async 和 await
async函数
声明函数前面加async
让异步代码像同步代码一样,也是异步编程的一种解决方案
1)async函数,返回一个Promise对象
2)promise对象的结果由async函数执行的返回值决定
image.png
i)async函数不返回,或是返回一个原始值,例如字符串(不是Promise对象、不是thenable对象、不抛出错误),返回的结果就是成功promise对象状态为fullfiled
image.png
ii)抛出错误,返回的是失败的promise对象
image.png
image.png
iii)返回结果是一个promise对象
返回的结果是promise对象,就可以使用then和catch方法
注意 async 函数中可以不加await,内部是同步函数
await 函数
1)await必须放在async中
-
await 右侧为promise对象
3)await 返回的是promise成功的值
4)右侧为promise对象失败了,就会抛出错误,用try catch接收
image.png
image.png
image.png
网友评论