首页 > 代码库 > js【实践】用 js 封装java shuffle函数(打乱数组下标方法)

js【实践】用 js 封装java shuffle函数(打乱数组下标方法)

此方法返回的会是一个全新的数组 所以并不会像java里的shuffle函数一样返回一个引用一样的数组

思路如下:

 1、新建一个函数传入需要打乱下标的数组

 2、获取数组的长度

 3、新建一个用来保存并且返回结果的数组

 4、根据数组的长度新建一个随机数(随机数记得要向下取整不然会下标越界)

 5、循环添加到结果数组里面

 

 代码如下:

 

<script type="text/javascript">
     var testArr = new Array("中国","美国","英国","法国","德国","西班牙","希腊",
"意大利","日本","韩国","尼日利亚","印度"); var newArr = shuffle(testArr); console.log(newArr); function shuffle(arry){ var sortArr = new Array(); var len = arry.length;//获取数组长度指定随机次数 for (var i = 0; i < len;) { var index = Math.floor(Math.random() * len); if (arry[index] != null) { sortArr.push(arry[index]); i++; arry[index] = null; } } return sortArr; } </script>

 

js【实践】用 js 封装java shuffle函数(打乱数组下标方法)