BigInt
新增的原始数据类型
- 用于解决Number类型的限制
- JS 中的Number类型只能安全地表示-9007199254740991 (-(2^
53
-1)) 和9007199254740991(2^53
-1)之间的整数,任何超出此范围的整数值都可能失去精度。 - 使用BigInt解决,直接在数字后面添加
n
,eg:478017309175710570n。或者使用BigInt()创建。 - 不能使用严格相等(
===
)与常规数字进行比较. - 不能使用
+
运算符。 - 与BigInt操作数一起使用时,算术运算符应该返回BigInt值。因此,除法(/)运算符的结果会自动向下舍入到最接近的整数。例如:
25 / 10; // → 2.5 25n / 10n; // → 2n
- 不能将BigInt传入需要Number类型参数的js函数中。
- JS 中的Number类型只能安全地表示-9007199254740991 (-(2^