JavaScript 数组乱序排序

解释:~是按位取反的意思,再一个表示正回来。
利用两个按位取反的符号,进行类型转化,转换成数字符号。

这里~~之后相当于向下取整了。

var arr = [1,2,3,4,5,6,7,8,9];
function shuffle(a) {
  var b = [];
  while (a.length) {
    var index = ~~(Math.random() * a.length);
    b.push(a[index]);
    a.splice(index, 1);
  }
  return b;
}
console.log(shuffle(arr));

你可能感兴趣的:(JavaScript 数组乱序排序)