async/await的作用
async用于声明一个函数是异步的,await(async wait)用于等待一个异步方法执行完成。
async/await的使用
async函数中return 的默认值是一个promise。
async function test() {
return 333
}
console.log(test()) //Promise {<resolved>: 333}
console.log(
test().then(result=> {
console.log(result) //333
})
)
await只能出现在async中,await等待的是一个Promise,那么会等待Promise对象resolve,然后得到resolve的值,返回结果。否则直接返回结果。
async/await解决的问题
解决问题:异步方法同步执行。
和promise的比较, 优势在于:
1、对then链的处理,多个异步方法同步执行的写法更简洁明了。
2、可以利用try..catch进行符合同步习惯的方式做异常捕获。