技术笔记
js数组打乱顺序
 moons   2020-08-05 21:54:09   127
专栏分类: javascript
      rand:function(arr) {
        var len = arr.length
        //首先从最大的数开始遍历,之后递减
        for(var i = arr.length - 1; i >= 0; i--) {
        //随机索引值randomIndex是从0-arr.length中随机抽取的
            var randomIndex = Math.floor(Math.random() * (i + 1));
        //下面三句相当于把从数组中随机抽取到的值与当前遍历的值互换位置
            var itemIndex = arr[randomIndex];
            arr[randomIndex] = arr[i];
            arr[i] = itemIndex;
        }
        //每一次的遍历都相当于把从数组中随机抽取(不重复)的一个元素放到数组的最后面(索引顺序为:len-1,len-2,len-3......0)
        return arr;
      }
Copyright © mos360.cn By Moons Soft Studio 百度统计