美文网首页
Day22 ES6 Promise Part1

Day22 ES6 Promise Part1

作者: JSleefat | 来源:发表于2019-04-24 21:50 被阅读0次

定义

  • 主要用于异步计算
  • 可以将异步操作队列化,按照期望的顺序执行,返回符合预期的结果
  • 可以在对象之间传递和操作Promise,帮助我们处理队列

回调问题

  • 嵌套层次深,难以维护
  • 无法正常使用return和throw
  • 无法正常检索堆栈信息
  • 多个回调之间难以建立联系

三个状态

  • pending
  • fulfilled
  • rejected
    一经改变 不会再变

then嵌套

会先执行then内部的promise再顺序执行外层的promise

错误处理方法

reject("错误信息").then(null,(message)=>{})
throw new Error("错误信息").catch((message)=>{})

.catch().then()
捕获处理异常后,可以继续执行

promise.all

  • 接收数组参数
  • 可以是promise对象,也可以是其他值,不过只有promise会等待状态改变
  • 当所有子promise都完成,该promise完成,返回值是全部值的数组
  • 有任何一个失败,该promise失败,返回值是第一个失败的子primise的结果

相关文章

网友评论

      本文标题:Day22 ES6 Promise Part1

      本文链接:https://www.haomeiwen.com/subject/hakawqtx.html