ES12 新增 BigInt 类型介绍与操作
在 JavaScript 中,数字类型只能表示有限范围内的数字,如果需要处理超出这个范围的数字,就需要使用 BigInt 类型。BigInt 类型是 ES12 中新增的一种基本数据类型,它可以表示任意大的整数,没有范围限制。
BigInt 类型的定义方式是在数字后面加上 n,例如:
----- --------- - ------------------------------------------
注意,BigInt 类型只能用于整数,不能用于小数。
BigInt 类型的操作
BigInt 类型的操作与普通数字类型有些不同,需要使用 BigInt 对象提供的方法。
- 转换为字符串
可以使用 toString() 方法将 BigInt 类型转换为字符串。
----- --------- - ------------------------------------------ ----- ------ - --------------------- -------------------- -- ------------------------------------------
- 转换为普通数字类型
可以使用 Number() 方法将 BigInt 类型转换为普通数字类型,但是转换时需要注意超出范围的情况。
----- --------- - ------------------------------------------ ----- --- - ------------------ -- ----------- ----------- ------ ------ -- --- -- ----- -- ------
- 运算
可以使用 BigInt 对象提供的运算方法进行加减乘除等运算。
----- ---- - ------------------------------------------ ----- ---- - ------------------------------------------ ----- --- - ---- - ----- ----- --- - ---- - ----- ----- --- - ---- - ----- ----- --- - ---- - ----- ----------------- -- ------------------------------------------ ----------------- -- ------------------------------------------ ----------------- -- --------------------------------------------------------------------------------- ----------------- -- --------------------
需要注意的是,运算时需要保证操作数都是 BigInt 类型。
- 比较
可以使用 BigInt 对象提供的比较方法进行大小比较。
----- ---- - ------------------------------------------ ----- ---- - ------------------------------------------ ---------------- - ------ -- ---- ---------------- - ------ -- ----- ---------------- --- ------ -- -----
需要注意的是,比较时需要保证操作数都是 BigInt 类型。
BigInt 类型的使用场景
- 处理大整数
如果需要处理超出普通数字类型范围的大整数,就可以使用 BigInt 类型。
-------- ------------ - --- ------ - --- --- ---- - - --- - -- -- ---- - ------ -- -- - ------ ------- - ----------------------------- -- ---------------------------------------------------------------------------------------------------------------------------------------------------------------
- 处理加密算法
一些加密算法中需要处理超出普通数字类型范围的大整数,就可以使用 BigInt 类型。
----- - - ------------------------------------------ ----- - - ------------------------------------------ ----- - - - - -- --------------- -- ---------------------------------------------------------------------------------
总结
ES12 中新增的 BigInt 类型可以表示任意大的整数,没有范围限制。在处理大整数和加密算法等场景中有很好的应用。需要注意的是,BigInt 类型的操作与普通数字类型有些不同,需要使用 BigInt 对象提供的方法。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/65fbf273d10417a22277f065