acync 让异步函数看起来像同步函数,返回一个promise对象
async function f() {
return 1
}
f().then(alert) // 1
await 只能在acync函数中使用,await使得JavaScript等待,直到promise处理完成,
然后将结果继续下去。不会花费任何的cpu资源,因为引擎能够同时做其他工作:执行其他脚本,处理事件等等。
async function f() {
let promise = new Promise((resolve, reject) => {
setTimeout(() => resolve('done!'), 1000)
})
let result = await promise //暂停,当promise处理完成后重新恢复运行,直到promise返回一个resolve值
alert(result) // 'done!'
}
f()
网友评论