00001 var baseRandom = require('./_baseRandom'); 00002 00011 function shuffleSelf(array, size) { 00012 var index = -1, 00013 length = array.length, 00014 lastIndex = length - 1; 00015 00016 size = size === undefined ? length : size; 00017 while (++index < size) { 00018 var rand = baseRandom(index, lastIndex), 00019 value = array[rand]; 00020 00021 array[rand] = array[index]; 00022 array[index] = value; 00023 } 00024 array.length = size; 00025 return array; 00026 } 00027 00028 module.exports = shuffleSelf;