**
es6异步promise()和es7异步async与await
**
es异步promise()使用方法
// 方法testA
testA() {
return new Promise((resolve, reject) => {
if(true){//这里填写要判断的内容
resolve(value),//满足时返回
}else{
reject(value),//不满足时返回
}
})
},
//方法B
testB() {
this.testA().then(res => { // 方法A执行完后执行方法B
// 写方法B的内容
...
console.log(res) // 打印正常返回的值
}).catch(res => {
console.log(res) // 打印异常返回的值
})
}
**
es7异步async与await
**
function shows(){
return new Promise((resolve, reject)=>{
setTimeout(function(){
let msg='222';
if(true){//这里填写要判断的内容
resolve(msg);//满足时返回
}else{
reject(msg);//不满足时返回
}
},3000);
});
};
async function show(){
console.log("111");
let num= await shows();
console.log(num);
console.log("333");
}
//返回顺序 111 222 333
区别:
两个都是异步操作同步的方法
promise主要是:
new promise((resolve, reject)=>{//返回resolve与reject})
使用的时候会返回promise对象分别返回resolve与reject
promise.then(res=>{
}).catch(err=>{
})
async与await主要是:
在函数的头部使用async 然后异步的时候,使用await就可以异步了
async function xxx(){
await this.yy();
}
当this.yy()方法返回延迟的时候,就要结合promise
function yy(){
new promise((resolve, reject)=>{//返回resolve与reject})
}
async function xxx(){
await this.yy();
}