new Promise(
// 执行器
function (resolve, reject) {
//一段耗时很长的异步操做
resolve(); //数据处理完成
reject(); //数据处理出错
}
).then(function A() {
//成功
}, function B() {
//失败
})
Promise有三个状态: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 => {});推荐第二种