当一个 async function 返回一个值时,它实际上是返回一个 Promise 对象。这个 Promise 对象将会在 async function 执行完成后被 resolve,其返回值是 async function 返回的值。
以下面的 async function 示例为例:
async function foo() { return "bar"; }
如果调用 foo(),会返回一个 Promise 对象,我们可以通过 Promise 的 then() 方法来获取 async function 返回的值:
foo().then(value => { console.log(value); // 输出 "bar" });
需要注意的是,如果 async function 在执行过程中抛出了错误,那么 Promise 对象将会被 reject。我们可以使用 catch() 方法来捕获错误:
async function foo() { throw new Error("Oops!"); }
foo().catch(error => { console.error(error); // 输出 "Error: Oops!" });
上一篇:asyncforinfunctiondefineventorcommand
下一篇:AsyncFunction().GetAwaiter().GetResult()和Task.Run(()=>AsyncFunction).GetAwaiter().GetResult()有何区别?