在nodejs中执行128位数学运算

时间:2014-04-21 22:57:30

标签: javascript node.js

我们需要一种在Node.js程序中进行128位数学运算的方法。看起来我可以链接一个C ++库来执行此操作,但由于这将是许多平台的开源,我首先想尝试一些不会引入特殊平台构建的东西。

我发现JavaScript只支持最多64位。但是,我也看到JavaScript模拟CPU并运行Linux,所以我确信这是可能的。我还不确定,但我们可能只需要几个基本的数学函数。

你知道已存在的东西(我还没找到)吗?你会采取什么方法?

3 个答案:

答案 0 :(得分:2)

这可能对您有用:

npm install big.js

它声称是一个小型,快速的JavaScript库,用于任意精度的十进制算术。

Try this.

答案 1 :(得分:1)

尝试

npm install int

并查看它是否适合您 - 它应该处理任意精度整数

这里的文件; https://www.npmjs.org/package/int

如果特定包不适合您,则会有相似包的列表; https://www.npmjs.org/browse/keyword/bignum

答案 2 :(得分:0)

2020年的新闻:

Node.js(版本10.4.0+)支持BigInts,后者是任意大的 integers

  • 例如,可以通过在数字后附加n或创建new BigInt()对象来创建它们。
    • 123n
    • new BigInt(123)
  • 运算符+, *, -, /, **, %与数字一样工作
  • 运算符/ 将结果截断为整数
  • 运算符<<, >>, <<<与数字一样工作
  • 操作员>>> 不起作用工作
  • 123n == 123,但是123n !== 123(它们是不同的类型)

有关更多信息,请参见: MDN web docs BigInt