手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >JS 在指定数组中随机取出N个不重复的数据
JS 在指定数组中随机取出N个不重复的数据
摘要:复制代码代码如下://从一个给定的数组arr中,随机返回num个不重复项functiongetArrayItems(arr,num){//新...

复制代码 代码如下:

<script language="javascript">

//从一个给定的数组arr中,随机返回num个不重复项

function getArrayItems(arr, num) {

//新建一个数组,将传入的数组复制过来,用于运算,而不要直接操作传入的数组;

var temp_array = new Array();

for (var index in arr) {

temp_array.push(arr[index]);

}

//取出的数值项,保存在此数组

var return_array = new Array();

for (var i = 0; i<num; i++) {

//判断如果数组还有可以取出的元素,以防下标越界

if (temp_array.length>0) {

//在数组中产生一个随机索引

var arrIndex = Math.floor(Math.random()*temp_array.length);

//将此随机索引的对应的数组元素值复制出来

return_array[i] = temp_array[arrIndex];

//然后删掉此索引的数组元素,这时候temp_array变为新的数组

temp_array.splice(arrIndex, 1);

} else {

//数组中数据项取完后,退出循环,比如数组本来只有10项,但要求取出20项.

break;

}

}

return return_array;

}

//测试

var ArrList=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33];

alert(getArrayItems(ArrList,6));

</script>

【JS 在指定数组中随机取出N个不重复的数据】相关文章:

js动态创建及移除div的方法

jquery 构造函数在表单提交过程中修改数据

JS实现带缓冲效果打开、关闭、移动一个层的方法

JavaScript实现简单的数字倒计时

创建你的第一个AngularJS应用的方法

JS实现窗口加载时模拟鼠标移动的方法

JS创建对象几种不同方法详解

JS获取时间的相关函数及时间戳与时间日期之间的转换

JS/Jquery判断对象为空的方法

JavaScript获取两个数组交集的方法

精品推荐
分类导航