promise理解

每个操作都返回一样的promise对象,保证链式操作

每个链式都通过then方法

每个操作内部允许犯错,出了错误,统一由catch error处理

操作内部,也可以是一个操作链,通过reject或resolve再造流程

 

实现:

 

如果各位熟悉前端js,相信你一定了解

  • jQuery(1.5+)的deferred
  • Angularjs的$q对象

nodejs里的实现

其他语言实现,详见 https://promisesaplus.com/implementations

其实,只要掌握了promise/a+规范,

  • a) 异步操作的最终结果,尽可能每一个异步操作都是独立操作单元
  • b) 与Promise最主要的交互方法是通过将函数传入它的then方法(thenable)
  • c) 捕获异常catch error
  • d) 根据reject和resolve重塑流程
原文地址:https://www.cnblogs.com/chenjinxinlove/p/5633030.html