promise链式调用时then的返回值

℡╲_俬逩灬. 提交于 2019-11-30 14:43:38

then方法里接受两个函数作为参数,分别是resolve和reject后执行的回调,他返回的是一个新的Promise实例(不是原来那个Promise实例)。

  1. return 值的情况(无return的情况下就返回undefined,也是返回值

    此时返回的Promise会成为Fulfilled的状态,return的值会作为新的promise对象下一个then的回掉函数的参数值。

  2. throw error

    返回的Promise会成为Rejected的状态,下一步执行catch中的回调函数或者then的第二个回调函数参数。(catch就是then(null, rejection)的别名,即失败时调用的方法)。

  3. return Promise 手动return Promise, 返回的promise状态不一定是resolved了,因此就可以改变下一个then/catch调用的结果了,这个比较常见。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!