假如有一個數組:
var arr1=['a','b','c','d','e','f','g'];
需要將它進行隨機打亂,網上好多都是用:
arr1.sort(function(){ return 0.5 - Math.random() });這種方式來實現,
但是,經測試發現:這種方式打亂的效果不是太明顯,網上百度了洗牌算法,經過修改,代碼如下:
function shuffle(arr) {
for (var i = arr.length - 1; i >= 0; i--) {
var randomIndex = Math.floor(Math.random() * (i + 1));
var itemAtIndex = arr[randomIndex];
arr[randomIndex] = arr[i];
arr[i] = itemAtIndex;
}
return arr;
}
直接調用shuffle(arr);
console.log(arr);
這樣,打印出來的arr就是隨機的了
