网站建设的基本内容,wordpress许愿墙,网站开发网站建设公司,邢台网站网页设计公司目录一、async函数二、await表达式三、async与await结合一、async函数
函数的返回值为promise对象promise对象的结果由async函数执行的返回值决定
async function main(){//1.如果返回的是一个非promise类型的数据#xff0c;那么返回的就是成功的状态// return 521//2.如果…
目录一、async函数二、await表达式三、async与await结合一、async函数
函数的返回值为promise对象promise对象的结果由async函数执行的返回值决定
async function main(){//1.如果返回的是一个非promise类型的数据那么返回的就是成功的状态// return 521//2.如果然会的是一个promise对象return new Promise((resolve,reject){// 2.1返回的状态由promise对象返回值决定resolve(ok)// reject(error)// 2.2 如果抛出异常// throw new Error(error) 结果就是抛出的异常 状态为失败})
}
let result main();
console.log(result);和then的返回一模一样 二、await表达式
await右侧的表达式一般为promise对象但也可以是其他的值。如果表达式是promise对象await返回的是promise成功的值如果表达式是其他值直接将此值作为await的返回值 注意 await必须卸载async函数中但是async函数中可以没有await如果await的promise失败了就会抛出异常需要通过try…catch捕获处理 async function main(){let p new Promise((resolve,reject){resolve(ok)})//1.右侧为promise的情况let res await pconsole.log(res)//ok//2.右侧为其他类型的数据let res2 await 123console.log(res2)//123
}通过try/catch捕获错误 async function main() {let p new Promise((resolve, reject) {reject(error)})try {let result await p} catch (e) {console.log(e)}}main()三、async与await结合
使用回调函数的方式实现 async 与 await