手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >js获取数组任意个不重复的随机数组元素 原创
js获取数组任意个不重复的随机数组元素 原创
摘要:复制代码代码如下://从一个给定的数组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 my_array = new Array();

for (i = 0; i < 20; i++)

{

my_array[i] = "Num:"+i;

}

my_array = getArrayItems(my_array,5);

for (i = 0; i < my_array.length; i++)

{

alert(my_array[i]);

}

</script>

【js获取数组任意个不重复的随机数组元素 原创】相关文章:

jquery中map函数遍历数组用法实例

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

用NODE.JS中的流编写工具是要注意的事项

菜单制作学习一个小东西 原创

匹配html标记的正则

js获取滚动距离的方法

图片分页查看 原创

用srcElement实现添加效果 原创

手机号码本地检测 原创

JS的IE和Firefox兼容性集锦

精品推荐
分类导航