Promise介绍
Promise是一个构造函数,可以将异步操作用同步流程表达出来,本质是异步的,用来解决回调地狱。
3个状态
pendind:Promise初始化状态
fullfilled:Promise成功状态,调用resolve方法,状态由pending=>fullfilled
rejected:Promise失败状态,调用reject方法,状态由pending=>rejected
特点
1.状态不受外界影响:只有异步操作的结果可以决定Promise是哪种状态,其他操作无法改变这个状态。
2.一旦状态由pending变为fullfilled或者rejected,则状态凝固。
Promise参数
Promise构造函数接受一个函数作为参数,函数中传入两个参数:resolve和reject。
当异步操作成功调用resolve的时候将Promise的状态改为fullfilled,失败调用reject将Promise的状态改为rejected
基本使用步骤:
1.创建promise对象
2.调用then方法处理数据
Promise常用方法
1.then方法返回一个新的Promise对象,可以获取到resolve异步操作成功的数据。
2.all方法可以同时处理多个并行异步请求,并且全部进入fullfilled状态才会调用resolve。
3.catch方法用来捕获异常