正常情况下,await 命令后面是一个 Promise 对象,返回值是该 Promise 对象的结果。如果不是 Promise 对象,就会进行自动转换,使用 Promise.resolve(),就直接返回对应的值
await 命令后面的 Promise 对象如果变为 reject 状态,则 reject 的参数会被 catch 方法的回调函数接收到
注意,上面代码中,await 语句前面没有 return,但是 reject 方法的参数依然传入了 catch 方法的回调函数。这里如果在 await 前面加上 return,效果是一样的
任何一个 await 语句后面的 Promise 对象变为 reject 状态,那么整个 async 函数都会中断执行