背景
有的时候需要我们假装获取到了新数据了(本质上是网络连接出错)
或者面试一份新工作,乱序数组都是需要用到的.
方法1
如果数组的每一项都和数组长度内的随机一项调换位置,那不就是完美的乱序了吗?
//洗牌算法
function randomArr =(arr=[])=>{
let i = arr.length
while(i){
let j =Math.floor(Math.random()*i--)
[arr[i],arr[j]] = [arr[j],arr[i]]
}
方法2
利用Array.prototype.sort()方法,
注意此算法为伪随机.
arr.sort(()=>{
return Math.random()>0.5?1:-1
})
网友评论