一:async函数与await关键字
async function
声明创建一个绑定到给定名称的新异步函数。函数体内允许使用 await
关键字,这使得我们可以更简洁地编写基于 promise 的异步代码,并且避免了显式地配置 promise 链的需要。
function resolveAfter2Seconds() {return new Promise((resolve) => {setTimeout(() => {resolve('resolved');}, 2000);});
}async function asyncCall() {console.log('calling');const result = await resolveAfter2Seconds();console.log(result);// Expected output: "resolved"
}asyncCall();
使用细节
- 在async函数内,使用await关键字,获取Promise对象“成功状态”结果值
- await必须用在有async修饰的函数内
- await会阻止“异步函数内”代码继续执行,原地等待结果。实际上是使用await关键字取代then函数,等待获取Promise对象成功状态的结果值
二:错误信息捕获
try....catch语句标记要尝试的语句块,并指定一个出现异常时抛出的响应
try{//要执行的代码
} catch(error){//error接收的是错误信息//try里面代码,如果有错误,直接进入这里执行
}