ES11 中对 BigInt 通用的算术运算符的使用详解

阅读时长 3 分钟读完

在 JavaScript 中,BigInt 是一个比 Number 类型更大的整数类型。在先前的版本中,BigInt 还不能像 Number 类型一样使用算术运算符。但在 ES11 中,BigInt 现在可以使用通用的算术运算符了,这让在 JavaScript 中使用更大的整数变得更加容易。

开始使用 BigInt

在 ES11 中,可以使用 BigInt() 函数将一个数字转换为 BigInt 类型。例如:

BigInt 的大小限制

BigInt 类型可以表示比 Number 类型更大的整数。在 BigInt 类型中,数值的限制是 2 的 53 次方次方(9007199254740992)到 2 的 64 次方次方减 1(18446744073709551615)之间的整数。但是,在 JavaScript 中,BigInt 类型的精度会随着数字大小的增加而变得较低。

BigInt 的基本运算

BigInt 类型可以使用通用的算术运算符,包括加法、减法、乘法和除法。这些运算符可以使用与 Number 类型相同的方式使用。

需要注意的是,在算术运算时,BigInt 类型不会隐式类型转换为 Number 类型。因此,在进行运算时,需要使用 n 后缀来指示值是 BigInt 类型的。

BigInt 的比较运算

与算术运算符一样,BigInt 类型也可以使用比较运算符进行比较运算。这些运算符包括 ===!==<><=>=

需要注意的是,在比较 BigInt 和 Number 类型的值时,BigInt 类型的值将首先被转换为 Number 类型,这可能会导致精度损失。

BigInt 的位运算

BigInt 类型也支持位运算,包括按位与、按位或和按位异或运算符,以及左移和右移运算符。

结论

ES11 中,BigInt 类型可以使用通用的算术运算符,包括加、减、乘和除。同时,BigInt 类型也支持位运算和比较运算符。使用 BigInt 类型可以方便地处理较大的整数问题,但需要注意 BigInt 类型的精度问题。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6748cc1a93696b02680443e8

纠错
反馈