首页 > 解决方案 > 在 Typescript 中使用 AsyncFunction 构造函数

问题描述

以下在 JavaScript 中运行良好,但在使用 TypeScript 时会出现运行时错误:

let AsyncFunction = Object.getPrototypeOf(async () => { }).constructor

async function foo()
{
}

let myFunc =  new AsyncFunction("_this", "await foo()"))

https://jsfiddle.net/j4umkchw/

错误出现在 Chrome 90 开发工具中:

未捕获的 SyntaxError:await 仅在异步函数和模块的顶层主体中有效

奇怪的是,我确信这曾经可以工作,但我不知道是工具链还是浏览器更改破坏了它。

标签: typescriptasync-await

解决方案


推荐阅读