random-bigint
Because the generation of random numbers is too important to be left to chance.
purpose
This module generates cryptographically strong pseudo-random BigInts.
usage
const random = // synchronous api, generates a random number between 0 and 2**128-1const num = // 128 bitsconsole // 'bigint'console // e.g. 248612378658540041399850947464384774729n // asynchronous api
api
This module exports a single function that is documented below.
random(bits[, cb])
bits
{number} Number of bits.cb
{Function} Optional(err, num)
callback.
Generate a random BigInt in the range 0..2**bits-1
.
Uses crypto.randomBytes()
to generate the raw random bits and
hence produces cryptographically strong pseudo-random numbers.
random()
operates synchronously when the callback is omitted.
Generating large numbers may block the event loop for a long time.
Bias the result to generate random numbers less than zero:
const random = const bits = 7const bias = 2n ** const num = - bias console // bigint in the range -128n..127n
license
ISC, see the LICENSE file in the top-level directory.