浅谈js新增基本类型BigInt
BigInt是JavaScript中的一个新的数据类型,用于表示任意大的整数。在JavaScript中处理大整数时,以往的Number类型可能会出现精度丢失的问题,因为Number类型的最大安全整数是Number.MAX_SAFE_INTEGER
(即9007199254740991
),而最小安全整数是Number.MIN_SAFE_INTEGER
(即-9007199254740991
)。
使用方法:
- 使用
BigInt
后缀,如:123n
。 - 调用
BigInt()
函数,如:BigInt("123")
。
// 使用后缀
const bigIntPositive = 123n;
const bigIntNegative = -123n;
// 使用函数
const bigIntPositiveFunc = BigInt("123");
const bigIntNegativeFunc = BigInt("-123");
// 基本运算
const sum = bigIntPositive + bigIntNegative; // 结果为-123n
// 注意:BigInt与Number不互相兼容,不能直接进行加法等操作
const sumError = bigIntPositive + 1; // 报错
// 强制转换
const num = Number(bigIntPositive); // 转换为Number类型,可能丢失精度
BigInt与Number之间的转换可能会导致精度的损失,因为BigInt可以表示的范围远远大于Number。如果需要进行数学运算,应当确保在BigInt范围内进行操作。
评论已关闭