API reference@evolu/commonRandom › Random

Defined in: packages/common/src/Random.ts:47

A simple wrapper around Math.random().

For more complex needs check RandomLibDep.

Example

import {
  assertEqual,
  assertTrue,
  assertType,
  createRandom,
  testCreateRandom,
  type RandomNumber,
} from "@evolu/common";

// For apps, use the Math.random-backed implementation.
const random = createRandom();
const value = random.next();
assertType<RandomNumber, typeof value>();
assertTrue(value >= 0);
assertTrue(value < 1);

// For tests, use a seed.
const firstTestRandom = testCreateRandom("test");
const secondTestRandom = testCreateRandom("test");
assertEqual(firstTestRandom.next(), secondTestRandom.next());

Properties

next

readonly next: () => RandomNumber;

Defined in: packages/common/src/Random.ts:49

Returns a floating point number in [0, 1). Just like Math.random().