在 TypeScript 中使用 BigInt

Fin*_*ber 8 typescript

我相信我现在应该能够在 TypeScript 中使用 BigInt ......但是更改一些代码库以使用它,我得到“找不到名称'BigInt'。(2304)”关于为什么我会收到此错误的任何想法?

$ cat test.ts 
let x = BigInt(123)
console.log(x.toString())

$ tsc test.ts 
test.ts:1:9 - error TS2304: Cannot find name 'BigInt'.

1 let x = BigInt(123)
          ~~~~~~


Found 1 error.
Run Code Online (Sandbox Code Playgroud)

现在如何在 TypeScript 中开始使用 BigInt?

zeh*_*zeh 12

BigInt已添加对TypeScript 3.2 的支持;确保您的版本兼容。

但最重要的是,您需要决定如何BigInt在您的脚本上下文中得到支持——您是提供 polyfill,还是只在保证BigInt支持的环境中运行您的脚本?

这意味着您将需要esnext作为构建目标(可能是 ontsconfig.jsontarget字段),因为BigInt与以前的 ECMAScript 版本不兼容。

如果你包括BigInt填充工具,你可以使用esnext.bigint作为的一部分libtranspilation期间场。这会将所需的定义添加到流程中。