Skip to main content
Module

x/lodash/npm-package/_shuffleSelf.js

A modern JavaScript utility library delivering modularity, performance, & extras.
Extremely Popular
Latest
File
var baseRandom = require('./_baseRandom');
/** * 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;}
module.exports = shuffleSelf;