如何将 BigInt 转换为 JavaScript 中的数字?

How to convert BigInt to Number in JavaScript?

我发现自己处于想要将 BigInt 值转换为 Number 值的情况。知道我的值是一个safe integer,我该如何转换呢?

事实证明它就像将它传递给 Number 构造函数一样简单:

const myBigInt = BigInt(10);  // `10n` also works
const myNumber = Number(myBigInt);

当然,您应该记住,您的 BigInt 值必须在 [Number.MIN_SAFE_INTEGER, Number.MAX_SAFE_INTEGER] 范围内才能正常进行转换,如问题中所述。

您可以使用 parseIntNumber

const large =  BigInt(309);
const b = parseInt(large);
console.log(b);
const n = Number(large);
console.log(n);

您应该使用以下任一静态方法:

BigInt.asIntN() - 将 BigInt 值限制为有符号整数值,并且 returns 该值。 BigInt.asUintN() - 将 BigInt 值限制为无符号整数值,并且 returns 该值。

如此处所述:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/BigInt#static_methods