Module

x/lodash/_shuffleSelf.js

A modern JavaScript utility library delivering modularity, performance, & extras.
Extremely Popular
Go to Latest
File
define(['./_baseRandom'], function(baseRandom) {
/** Used as a safe reference for `undefined` in pre-ES5 environments. */ var undefined;
/** * A specialized version of `_.shuffle` which mutates and sets the size of `array`. * * @private * @param {Array} array The array to shuffle. * @param {number} [size=array.length] The size of `array`. * @returns {Array} Returns `array`. */ function shuffleSelf(array, size) { var index = -1, length = array.length, lastIndex = length - 1;
size = size === undefined ? length : size; while (++index < size) { var rand = baseRandom(index, lastIndex), value = array[rand];
array[rand] = array[index]; array[index] = value; } array.length = size; return array; }
return shuffleSelf;});