【问题标题】: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>
  • 编程语言对于它们可以将多大的数字存储为整数有限制。您可能想查看该限制是多少。

标签: javascript string scientific-notation


【解决方案1】:

在 JS 中,所有数字都被视为浮点数,因此最终它们以精度结束,您可以使用 try BigInt('90938498237058927340892374089') 它将为您提供从字符串到数字的精确数字。 除此之外,您还可以在这里查看Javascript - parse string to long 此链接可能对您有所帮助。

【讨论】:

  • 这更多的是评论而不是答案。它根本不回答 OP 问题。
【解决方案2】:

尝试使用BigInt类型:

BigInt('90938498237058927340892374089');

它返回 BigInt 数字和 'n'-literal:

90938498237058927340892374089n

【讨论】:

猜你喜欢
  • 2015-04-28
  • 2021-06-14
  • 2012-04-06
  • 2010-09-18
  • 2021-09-27
  • 1970-01-01
  • 2013-02-01
  • 1970-01-01
  • 2012-09-17
相关资源
最近更新 更多