⾸先 async 和 await 是解决异步的终极⽅案,async 和 await ⼀般配和使⽤,当我
们给函数前⾯加上关键字 async,这个时候,这个函数的返回值就是⼀个 promise. ⽽ await 是⼀个同步
的操作,await 只能配合 async 只能,不然会报错,await 后⾯可以是表达式,也可以是⼀个 promise,在
await 下⾯的代码必须得等待 await 执⾏完之后才能在执⾏
他们和 promise 的区别就是在写法上更加的简洁.
// es7的时候出了一个async和await 是解决回调地狱的终极方案
async function getdata() {
let data = await $.ajax({
method: "get",
url: "data.json"
});
console.log(data);
let data2 = await $.ajax({
method: "get",
url: "data2.json"
});
console.log(data2);
let data3 = await $.ajax({
method: "get",
url: "data3.json",
});
console.log(data3);
return data3;
}
// async函数return的永远是一个promise对象
getdata().then((res) => {
console.log(res);
});
以上就是我对 async 和 await 的理解.