UNPKG

deep-random-pick

Version:

Picks a pseudo-random item from a pool in several ways, including a recursive method that allows for more control over probability.

26 lines (25 loc) 612 B
"use strict"; exports.__esModule = true; var Alea = require('alea'); exports.arrayPick = function (array) { if (array) { if (Array.isArray(array)) { var prng = new Alea(); if (array.length < 1 || !array) { return null; } else if (array.length === 1) { return array[0]; } else { return array[Math.round(prng() * (array.length - 1))]; } } else { return array; } } else { return null; } };