JavaScript打乱一个数组的顺序的两种方式
- 方法一:利用sort函数
arr.sort(function() {
return .5 - Math.random();
});
这种方式可以打乱一个数组的顺序,但是并不是真正的乱序,所以建议不要用在严谨的打乱顺序上。
- 方法二:自己封装一个函数
function rand(arr) {
var len = arr.length
//倒叙遍历该数组
for(var i = arr.length - 1; i >= 0; i--) {
// 产生一个在数字长度内的随机数
var randomIndex = Math.floor(Math.random() * (i + 1));
// 作为数组下标去取数组该位置的值
var itemIndex = arr[randomIndex];
// 随机的位置与该位置互换
arr[randomIndex] = arr[i];
arr[i] = itemIndex;
}
return arr;
}
One comment
感谢,正好遇到打乱数组顺序的问题,解决了
。