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;
      }
Last modification:October 2, 2019
If you think my article is useful to you, please feel free to appreciate