码迷,mamicode.com
首页 > 编程语言 > 详细

洗牌函数[打乱数组的顺序] slice()的新运用 [原来arr.slice(start, end) 的start不是必需的]

时间:2020-02-15 13:37:55      阅读:72      评论:0      收藏:0      [点我收藏+]

标签:图片   code   style   min   tran   mat   image   src   info   

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

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([‘a‘,‘c‘,‘m‘,‘n‘,‘1‘])  // ["m", "c", "a", "n", "1"]

 技术图片

 

洗牌函数[打乱数组的顺序] slice()的新运用 [原来arr.slice(start, end) 的start不是必需的]

标签:图片   code   style   min   tran   mat   image   src   info   

原文地址:https://www.cnblogs.com/ladybug7/p/12311127.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!