JS洗牌函数

Math.random() 方法:返回介于 0 ~ 1 之间的一个随机数;

console.log(Math.random()); // 0.341904629122487
// Math.floor()和 Math.ceil()
  var t = Math.random();
  console.log(t); // 0.8250578801252269
  console.log(Math.floor(t),Math.ceil(t)); // 0 1
// 实现函数将有序数组变成无序数组
  var arr = [1, 2, 3, 4, 5];
  arr.sort(function() {
    return Math.random() - 0.5;
  })
  console.log(arr); // [1, 5, 2, 3, 4]
// js洗牌函数
  function shuffle(arr){
    var len = arr.length;
    var randomIndex,temp;
    while(len){
      randomIndex = Math.floor(Math.random()*(len--));
      temp = arr[randomIndex];
      arr[randomIndex]=arr[len];
      arr[len]=temp;
    }
    return arr;
  }
  var arr = [1,2,3,4];
  console.log(shuffle(arr));

你可能感兴趣的:(JS洗牌函数)