范围JavaScript中的随机大整数

时间:2014-03-28 14:06:22

标签: javascript node.js random biginteger

我需要一个介于0和整数之间的随机整数,小数位数超过1000。

使用整数:big-integer(NPM)可以很容易地使用整数,但是没有随机方法,并且Math.random()没有足够的精度来覆盖域。

有没有人知道在JavaScript中大范围生成伪随机整数的聪明方法?

3 个答案:

答案 0 :(得分:2)

我认为在Node.JS中针对您的案例的最佳解决方案是crypto.randomBytes(size, [callback]);

答案 1 :(得分:1)

也许这就是:

var crypto = require('crypto');
var biformat = require('biguint-format');

// Adjust # bytes as needed
var seed = biformat(crypto.randomBytes(8), 'dec');
bigInt(seed);

答案 2 :(得分:1)

https://www.npmjs.com/package/random-bigint

const random = require('random-bigint')

// synchronous api, generates a random number between 0 and 2**128-1
const num = random(128) // 128 bits

仅供参考,**是幂