javascript - javascript中如何处理大数字

标签 javascript floating-point decimal biginteger bignum

我正在寻找一个处理真正(长、大、巨大、 Storm )数字的数学解决方案。我还没有发现任何东西,但我不想认为这个问题目前还没有解决。我正在寻找一个简单的数字解决方案,例如 Microsoft Excel Precision(30 位小数)或 BigInteger (Java) 解决方案。当然是用 JavaScript 编写的。

最佳答案

在为 ElGamal 加密实现寻找大整数库时,我测试了多个库,结果如下:

我推荐这个: Tom Wu 的 jsbn.js ( http://www-cs-students.stanford.edu/~tjw/jsbn/ )

  • 功能全面、速度快

Leemon Baird 的大整数库 ( http://www.leemon.com/crypto/BigInt.js )

  • 功能全面且速度相当快
  • 但是:负数表示有问题!

bignumber.js ( https://github.com/MikeMcl/bignumber.js )

  • 功能相当齐全
  • 但是:将非常大的数字从字符串转换为 BigNumber 对象会导致 INFINITY

JavaScript 的方案算术库 ( https://github.com/jtobey/javascript-bignum )

  • JS-Scheme算术函数的实现
  • 但是:没有 y= x^e mod n 的函数

我还没有亲自测试过这个: BigNumber ( http://jsfromhell.com/classes/bignumber )

  • 高精度计算函数
  • 但是:由于数字的内部表示为字符串,据说速度很慢

关于javascript - javascript中如何处理大数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4288821/

相关文章:

php - 将逗号作为小数点的数字转换为 float

c++ - 将 float 舍入为 2 位小数以将其写入文本文件

javascript - 每次在 javascript 中添加新行时如何获得递增的 ordre 值

javascript - contentEditable 和 lastChild IE、Firefox 和 Chrome LastChild

floating-point - HP 2114/15/16 浮点转换

c++ - 非恢复浮点平方根算法

c# - 如何在没有多次转换的情况下逐字定义小数数组?

mysql - 存储小数位 MySQL

javascript - 2 在不同的选项卡中相互重叠的文本 JQuery-UI

javascript - 旋转后如何获得元素的真实宽度和高度?