promise总结

new Promise(
    // 执行器
    function (resolve, reject) {
        //一段耗时很长的异步操作
        resolve(); //数据处理完成
        reject(); //数据处理出错
    }
).then(function A() {
    //成功
}, function B() {
    //失败
})

Promise有三个状态:

pengding 初始状态 fulfilled 操作成功 rejected 操作失败
 
Promise一经创建,立刻开始执行,每个.then()可以返回一个新的promise实例,所以可以链式调用,也可以返回其他值或者返回空。
这里要注意,如果返回新的promise,下一级的then会在新的promise状态改变之后再执行,如果返回其他任何值,则会直接执行then,不等待上一个then的promise的执行结果。
如果上一个函数返回fulfilled状态 则执行then里的第一个成功回调函数,如果返回rejected状态则执行失败回调。
promise错误处理
方法1:reject('错误信息‘).then(null,message =>{});
方法2:throw new Error('错误信息’).catch(message => {});推荐第二种
 
 
 
原文地址:https://www.cnblogs.com/wuyuchao/p/8615875.html