参考视频:https://www.bilibili.com/video/BV1Z7411j76r
什么是Promise
异步编程的解决方案,解决了回调函数嵌套的问题,提升代码可读性
Promise的几种状态
Promise有pending、resolved、rejected三种状态,resolved和rejected状态是不可逆的
api
then()
当Promise调用resolve时会执行then(),并且会返回一个状态为resolved的Promise对象
catch()
当Promise调用reject时会执行catch(),并且会返回一个状态为rejected的Promise对象
all()
all()接收一个Promise实例对象数组作为参数。返回一个Promise对象,当这些子promise都resolve时,会触发该对象的then(),一旦有任何一个Promise reject了就会触发catch()
race()
和all()一样接收一个promise数组,返回一个新Promise,当这些子promise中任意一个resolve或者reject时,会调用相应的then()或者catch()