async和await是ES7中新增的
async:用来声明异步函数的
await:等待promise的执行结果
使用的好处
两者结合可以让我们像写同步代码一样写异步代码;
async
1.写在普通函数定义的前面,会让这个函数变成异步
function fn(){
consloe.log(1)
}
fn()
console.log(2)
1
2
---------------------------------------------------------------------------------------------
async function fn(){
consloe.log(1)
}
fn().then()
console.log(2)
2
1
2.返回值为promise对象
async function fn(){
return 123}
console.log(fn())
3.返回值由async后的函数返回值决定
3.1如果返回值不是一个promise对象,返回成功的 promise对象
异步函数主要争对不会马上执行的操作
await
必须写在async函数内,但是async函数内可以没有await