數組隨機排序 shuffle
阿新 • • 發佈:2017-11-25
bsp style 遞歸 func ret splice shuf 基礎上 有一個
1,function randomSort(arr, newArr) { // 如果原數組arr的length值等於1時,原數組只有一個值,其鍵值為0 // 同時將這個值push到新數組newArr中 if(arr.length == 1) { newArr.push(arr[0]); return newArr; // 相當於遞歸退出 } // 在原數組length基礎上取出一個隨機數 var random = Math.ceil(Math.random() * arr.length) - 1; // 將原數組中的隨機一個值push到新數組newArr中newArr.push(arr[random]); // 對應刪除原數組arr的對應數組項 arr.splice(random,1); return randomSort(arr, newArr); } 2、function randomSort(a, b) { return Math.random() > 0.5 ? -1 : 1; } var arr = [1,2,3,4,5,6,7,8,9]; arr.sort(randomSort);
數組隨機排序 shuffle