Promise是一个构造函数,用来解决回调地狱问题,可以将异步操作以同步操作的流程表达出来。
promise构造函数是同步执行,then方法是异步执行。
promise新建后会立即执行,且无法取消。
image.png
- promise的状态
三种状态:pending、fulfilled、rejected
两个过程:pending -> fulfilled。pending -> rejected
promise什么时候会进入catch? 当pending为rejected时,会进入catch - 实例方法(挂载在原型/实例对象上)
- Promise.prototype.then():得到异步任务正确的结果
- Promise.prototype.catch():获取异步任务异常结果
- Promise.prototype.finally():成功与否都会执行
- 对象(静态)方法 (挂载在构造函数)
- Promise.all():并发处理多个异步任务,所有任务执行完,才能得到所有的结果
- Promise.race():并发处理多个异步任务,只要有一个任务完成就返回结果(返回的时最快执行完成的)
网友评论