promise、async、await使用

promise:promise将异步操作按照链式串联起来

Promise.all()方法用于将多个 Promise 实例,包装成一个新的 Promise 实例。

Promise.all()方法接受一个数组作为参数,p1p2p3都是 Promise 实例,如果不是,就会先调用下面讲到的Promise.resolve方法,将参数转为 Promise 实例,再进一步处理。

async函数返回一个 Promise 对象,可以使用then方法添加回调函数。

async函数完全可以看作多个异步操作,包装成的一个 Promise 对象,而await命令就是内部then命令的语法糖。

await 命令

正常情况下,await命令后面是一个 Promise 对象,返回该对象的结果。如果不是 Promise 对象,就直接返回对应的值。

任何一个await语句后面的 Promise 对象变为reject状态,那么整个async函数都会中断执行。

使用注意点

1、await命令后面的Promise对象,运行结果可能是rejected,所以最好把await命令放在try...catch代码块中。

2、多个await命令后面的异步操作,如果不存在继发关系,最好让它们同时触发。

3、await命令只能用在async函数之中,如果用在普通函数,就会报错。

4、async 函数可以保留运行堆栈。

posted @ 2022-06-13 16:58  不特别但唯一  阅读(165)  评论(0)    收藏  举报