import baseRandom from './_baseRandom.js'; /** * 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) { let index = -1; const length = array.length; const lastIndex = length - 1; size = size === undefined ? length : size; while (++index < size) { const rand = baseRandom(index, lastIndex); const value = array[rand]; array[rand] = array[index]; array[index] = value; } array.length = size; return array; } export default shuffleSelf;