A-A+

随机生成5个1-5的不重复的数字

2016年01月25日 JavaScript 暂无评论 阅读 139 次

随机生成5个1-5的不重复的数字:

1.josn 下标判断对应值,

var arr = [],json = {};
while(arr.length<5){
var num = Math.round(Math.random()*5);
if(!json[num]) {
arr.push(num);
json[num] = true;
}
}
alert(arr);

2.for

(j=-1 表示重新从0开始过滤)

var arr=[]
for(var i=0; i<6; i++) {
var num = Math.round(Math.random() * 5);
for (var j = 0; j < arr.length; j++) {
if (num == arr[j]) {
num = Math.round(Math.random() * 5);
j = -1
};
};
arr.push(num);
}
alert(arr)
3.indexOf()
可以使用数组的indexOf()方法,如果返回值为-1则说明不存在,如果返回值为大于-1的整数,则说明存在。例如:
var arr = [1,2,3];
arr.indexOf(1); // 返回0
arr.indexOf(5); // 返回-1
附:返回值为数组中的最靠前元素在数组的位置
var arr = [];
for(var i = 0;i< 1000;i++){
num = Math.round(Math.random()*10);
if(!(arr.indexOf(num)>-1)) {
arr.push(num);
}
}
alert(arr);

4.数组删除 splice 返回被删除的元素

var num=[1,2,3,4,5];
var oNum=[];
for (var i = 0; i <5; i++) {
var seat=parseInt(Math.random()*num.length);
oNum.push(num.splice(seat,1))
};
alert(oNum)

标签:

给我留言

Copyright © web前端技术开发个人博客 保留所有权利  京ICP备14060653号 Theme  Ality

用户登录