@cabbagesoup/random-lib
TypeScript icon, indicating that this package has built-in type declarations

1.0.1 • Public • Published

JavaScript Random Functions This repository contains a set of utility functions for generating random numbers, shuffling arrays, flipping coins with a weighted probability, and rolling dice with customizable options. Below is a description of each function along with usage examples.

Functions random() Generates a random floating-point number between 0 (inclusive) and 1 (exclusive).

Usage:

const num = random();
console.log(num); // e.g., 0.123456789
randomN(n)

Generates a random integer between 0 (inclusive) and n (inclusive).

Parameters:

n (number): The upper limit of the random number range. Usage:

const num = randomN(10);
console.log(num); // e.g., 7
randomNtoO(n, o)

Generates a random integer between n (inclusive) and o (inclusive).

Parameters:

n (number): The lower limit of the random number range. o (number): The upper limit of the random number range. Usage:

const num = randomNtoO(5, 15);
console.log(num); // e.g., 12
die(x)

Rolls a single die with x sides and returns the result. Throws an error if x is less than or equal to 0.

Parameters:

x (number): The number of sides on the die. Usage:

const roll = die(6);
console.log(roll); // e.g., 4
shuffle(arr)

Returns a new array with the elements of arr shuffled randomly.

Parameters:

arr (array): The array to shuffle. Usage:

const shuffledArray = shuffle([1, 2, 3, 4, 5]);
console.log(shuffledArray); // e.g., [3, 1, 5, 4, 2]
flip(t = 0.5)

Returns a boolean value true or false, weighted by the probability t.

Parameters:

t (number, optional): The probability of returning true (between 0 and 1, inclusive). Defaults to 0.5. Usage:

const result = flip(0.7);
console.log(result); // e.g., true or false
dieRoll(desc)

Rolls dice based on a description string and returns the total value. Supports multiple dice rolls and modifiers.

Parameters:

desc (string): Description string following the format XdY (e.g., 3d6, 2d10+5). Usage:

const total = dieRoll('2d6+1d4');
console.log(total); // e.g., 12

License This project is licensed under the MIT License. See the LICENSE file for details.

Readme

Keywords

none

Package Sidebar

Install

npm i @cabbagesoup/random-lib

Weekly Downloads

11

Version

1.0.1

License

ISC

Unpacked Size

11.1 kB

Total Files

8

Last publish

Collaborators

  • cabbagesoup