Es6
什么是Promise?
promise是es6 中专门用来处理异步回调的,可以解决回调地狱 promise是一个构造函数,这个构造函数中放一个回调函数作为参数,这个回调函数中放的是异步的操作, 在成功的时候我们执行resolve回调函数,其实调用的是.then里的回调,在失败的时候执行reject回调函数其实调用的是catch回调说白了 promise就是把原来的回调函数嵌套在里面的写法变成了链式写法(.then的写法)
Promise的两个特点
1.Promise对象的状态不受外界影响
1)pending 初始状态
2)fulfilled 成功状态
3)rejected 失败状态
2.Promise 有以上三种状态,只有异步操作的结果可以决定当前是哪一种状态,其他任何操作都无法改变这个状态
Promise的状态一旦改变,就不会再变,任何时候都可以得到这个结果,状态不可以逆,只能由 pending变成fulfilled或者由pending变成rejected。
使用 new 来创建一个promise对象。
const promise = new Promise((resolve, reject) => {
// do something here ...
if (success) {
resolve(value); // fulfilled
} else {
reject(error); // rejected
}
});
then()方法: then 方法就是把原来的回