随机打乱数组内部元素的位置
使用Math.random()函数设置随机调换位置的索引,上代码
let arr = [1, 3, 12, 27, 29, 31, 65];
function randomArr(arr) {
let len = arr.length, // 数组长度,也就是设定要调换次数
index. // 随机调换的元素索引
for(let point=len-1; point>=0; point--) { // point--对调起始点
let temp; // 中间变量,用于存储对换的中间值
index = Math.floor(Math.random() * point);
temp = arr[index];
arr[index] = arr[point];
arr[point] = temp;
}
return arr
}
randomArr(arr); // 随机输出[29, 31, 1, 12, 65, 27, 3]