ES6 promise
promise是一个构造函数 自己身上有all reject resolve 这几个眼熟的方法 原型上有then catch等同样很眼熟的方法
new一个
var p=new promise(function(resolve,reject){
setTimeout(function(){
console.log('执行完成');
resolve('随便什么数据');
}, 2000);
})
promise的构造函数接受一个参数,是函数,并且传入两人参数resolve, reject 异步操作执行成功后和异步操作执行失败后的回调函数,resolve是将Promise的状态置为fullfiled,reject是将Promise的状态置为rejected。
上面代码执行一个异步操作,setTimeout 2秒后,输出“执行完成”并且调用resolve方法
代码运行2s输出执行完成 注意我们只是new一个对象,并没有调用它,我们传进去的函数就已经执行了,这是需要注意的细节 所以我们promise时候一般包在一个函数中,在需要的时候进行这个函数
function runAsync(){
var p = new Promise(function(resolve, reject){
//做一些异步操作
setTimeout(function(){
console.log('执行完成');
resolve('随便什么数据');
}, 2000);
});
return p;
}
runAsync()
https://www.cnblogs.com/whybxy/p/7645578.html

浙公网安备 33010602011771号