如何将一串大数转换为整数?
Posted
技术标签:
【中文标题】如何将一串大数转换为整数?【英文标题】:How to convert a string of big number to integer? 【发布时间】:2020-06-27 13:50:46 【问题描述】:javascript 将所有大数转换为科学记数法。
eg: '90938498237058927340892374089'
这个字符串转换成整数后会像科学记数法'9.093849823705893e+28
'一样出来。
如何将数据类型从 String 转换为 Integer 并避免使用科学记数法?
【问题讨论】:
需要一个大数字库 你的号码太大了。我建议使用这样的库:github.com/MikeMcl/bignumber.js 查看BigInt
,也许这就是我们要找的。span>
编程语言对于它们可以将多大的数字存储为整数有限制。您可能想查看该限制是多少。
【参考方案1】:
在 JS 中,所有数字都被视为浮点数,因此最终它们以精度结束,您可以使用 try BigInt('90938498237058927340892374089')
它将为您提供从字符串到数字的精确数字。
除此之外,您还可以在这里查看Javascript - parse string to long
此链接可能对您有所帮助。
【讨论】:
这更多的是评论而不是答案。它根本不回答 OP 问题。【参考方案2】:尝试使用BigInt
类型:
BigInt('90938498237058927340892374089');
它返回 BigInt
数字和 'n'-literal:
90938498237058927340892374089n
【讨论】:
MDN 上有一个文档developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/… 你测试过这个吗?这能回答 OP 的问题吗?以上是关于如何将一串大数转换为整数?的主要内容,如果未能解决你的问题,请参考以下文章