UNPKG

@technobuddha/library

Version:
18 lines 1.04 kB
/** * Pick a random items from a list. * @param list - Array of items to pick from * @param random - Random number generator * @returns Randomly selected item * @group Random * @category Pick * @example * ```typescript * const items = ['a', 'b', 'c']; * randomPick(items, () => 0.5); // 'b' (deterministic for example) * randomPick([], () => 0.5); // undefined * ``` */ export function randomPick(list, random = Math.random) { return list.length === 0 ? undefined : list[Math.floor(random() * list.length)]; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFuZG9tLXBpY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvcmFuZG9tLXBpY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7R0FhRztBQUNILE1BQU0sVUFBVSxVQUFVLENBQ3hCLElBQWtCLEVBQ2xCLFNBQXVCLElBQUksQ0FBQyxNQUFNO0lBRWxDLE9BQU8sSUFBSSxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7QUFDbEYsQ0FBQyJ9