一个洗牌函数

作用

洗牌函数的目的是为了生成一个随机数组。

代码

function getRandomInt(min, max) {
  return Math.floor(Math.random() * (max - min + 1) + min)
}

export function shuffle(arr) {
  let _arr = arr.slice()
  for (let i = 0; i < _arr.length; i++) {
    let j = getRandomInt(0, i)
    let t = _arr[i]
    _arr[i] = _arr[j]
    _arr[j] = t
  }
  return _arr
}

shuffle函数的作用

遍历arr,从0到i之间随机取一个索引,将该索引对应的值与_arr[i]做交换,以此来达到打乱数组的目的。

getRandomInt函数的作用

返回min和max之间的一个随机整数。