首页 >web前端 >js教程 >为什么在异步函数外使用 `await` 时出现'await 仅在异步函数中有效”?

为什么在异步函数外使用 `await` 时出现'await 仅在异步函数中有效”?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-12-18 08:50:09599浏览

Why Does

等待异步函数

尝试在 JavaScript 中使用 wait 关键字时,您可能会遇到错误“await 仅在异步函数中有效”。当 wait 关键字使用不正确时,就会出现此错误。

在您的场景中,错误与 start 函数有关,而不是与 myfunction 函数有关。 myfunction 函数被正确定义为异步函数,允许您在其中使用await 关键字。但是,start 函数并未定义为异步函数。

要纠正此问题,应将 start 函数修改为异步函数,以便在其中使用 wait 关键字。以下是如何重写 start 函数的示例:

async function start(a, b) {
  const result = await myfunction(a, b);

  console.log(result);   // Do something with the result
}

通过使 start 函数异步,您现在可以使用 wait 关键字暂停函数的执行,直到 myfunction 函数完成其任务。执行。这很重要,因为它可以保证结果变量在继续后续代码之前包含预期的数据。

以上是为什么在异步函数外使用 `await` 时出现'await 仅在异步函数中有效”?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn