JavaScript随机打乱数组

实现洗牌函数(随机打乱数组)

    let arr = [1, 2, 3, 4, 5]
    // 随机数函数
    function getRandomNum(min, max) {
      // 返回[min, max]之间的随机数
      return Math.floor(Math.random() * (max - min + 1) + min)
    }
    // 洗牌函数
    function shuffle(array) {
      let newArr = array.slice()  // 不改变原数组,将数组剪切一份给newArr
      for (let i = 0; i < newArr.length; i++) {
        const j = getRandomNum(0, i)
        const temp = newArr[i]
        newArr[i] = newArr[j]
        newArr[j] = temp
      }
      return newArr
    }
    let randomArr = shuffle(arr)

你可能感兴趣的:(javscript,js,random,javascript,算法)