链式调用

请输入图片描述

因为then方法返回的是Promise所以可以一直使用then方法获取Promise的值,为了让回调正确获取到值,可以return Promise或者其他数据类型(字符串,数组等)

但是值得注意的是,当用定时器延迟return时,下一个then方法并不会等待这个延迟执行完再调用回调函数,所以导致了最后的回调获取不到值。如果下一个回调要获取上一个延迟return值一定要return Promise

请输入图片描述

reject终止链式调用

当进行then链式调用时,如果其中有Promise是reject(失败)的情况,那么之后的链式不会继续执行,可以用catch去捕获reject值。

请输入图片描述

Promise resolve()和Promise reject()会自动转为Promise,记得它是一个Promise对象