将大数字字符串转换为数字

Nit*_*ish 3 javascript numbers typescript

我可以用什么方法将 16 位数字和 2 个分数值的字符串转换为数字?

目前,当我尝试转换时Number('1234567890123456.12')将变为1234567890123456. 分数值将消失。

我只是想在不使用任何第三方库的情况下确认我可以将此字符串转换为数字吗?

Pil*_*mas 5

不幸的是没有。Javascript 使用双精度浮点数表示它的数字。在 16 位时,它只能存储整数部分,而不能存储小数点后的部分。您将需要一个 bignum 库来使用此值。

编辑:作为参考,您可以在 JavaScript 中使用的最大整数是 9,007,199,254,740,991

EDIT2:感谢 Jeremy,您可以使用像bignumberJS这样的库。

  • ...像 [bignumberJS](https://github.com/MikeMcl/bignumber.js/) 这样的库 (2认同)