1、串联 Promise
每次对 then() 或 catch() 的调用实际上创建并返回了另一个 Promise ,仅当前一个Promise 被完成或拒绝时,后一个 Promise 才会被决议。研究以下例子:
p1第一次调用then之后,会再次返回一个成功决议的Promise(即使p1是失败的决议调用then之后也是返回成功决议的Promise)。之后每调用一次then,都会返回一个成功决议的Promise。
对一个Promise可以多次调用then进行成功或失败的处理,而不会出现第一调用后就失效了。
2、错误捕获
catch即可以处理reject结果还可以捕获Promise执行器里抛出的错误。
Promise 串行链允许你捕获前一个 Promise 的完成或拒绝处理函数中发生的错误