Javascript中async与await的用法

2021-06-22  本文已影响0人  不断学习

转载出处

问题

希望在一个函数执行完毕之后才去执行另外一个函数,如何解决?

关于async

async 其实就是promise的语法糖。函数前面必须加一个async,异步操作的方法前加一个await 关键字。顾名思义,就是让你等一下,执行完了再继续往下走。注意:await 只能在async函数中执行,否则会报错。

关于await

await的意思就是等待。它后面可以跟一个表达式。如果是值(如字符串、数字、普通对象等等)的话,返回值就是本身的值。

通常使用方式为在后面跟一个promise对象。await会等待这个promise的状态由pending转为fulfilled或者rejected。在此期间它会阻塞,延迟执行await语句后面的语句。

如果promise对象的结果是resolve,它会将resolve的值,作为await表达式的运算结果。

例子

对于一个操作(创建菜单),需要在获取到token之后利用token才能执行这个操作,那么对应代码如下:

那么可用以下方式实现二者的依次执行:

执行:

输出结果:

关于异常

例:假定上述例子在获取token的时候发生了异常,即Promise对象状态为reject,此时要在async函数中对异常进行处理,如下所示:

上一篇下一篇

猜你喜欢

热点阅读