1.什么是promise
Promise是异步编程的一种解决方案,它是一个对象,可以获取异步操作的消息,他的出现大大改善了异步编程的困境,避免了地狱回调,它比传统的解决方案回调函数和事件更合理和更强大。
2.promise的用法
使用promise,需要使用promise构造函数创建一个promise对象,接受一个函数作为参数,这个参数函数有两个形参,resolve和reject。然后再写一个参数函数,写异步的操作。必须异步操作成功之后调用resolve,异步操作失败之后调用reject。这样创建的promise对象就可以知道里面异步操作的状态。
创建promise实例
let promise=new Promise(function(resolve,reject){
//自己的逻辑代码
f (/* 异步操作成功 */) {
resolve(value);
} else { // 异步操作失败
reject(error);
}
})
.then(res=>{
console.log("成功状态")
})
.catch(re=>{
console.log("失败状态")
})
3.promise的状态(三个)
pending状态:一旦创建promise对象就会成为进行中状态(pengding)
fulfilled状态:一旦调用resolve就会成为成功状态(fulfilled)
rejected状态:一旦调用rejected就会成为失败状态(rejected)
promise的状态一旦成为fulfilled或rejected状态,是不可逆的。