将50个随机数赋予数组,确保数组内的元素值不重复。
求代码,谢谢。
辛苦。
[解决办法]
<script type="text/javascript">
var size=0;
var arr=[];
while(true){
var b=parseInt(Math.random()*50);
if(arr[b+'a']==undefined){
arr[b+'a']=b;
size+=1;
if(size==50){
break;
}
}
}
for(var i in arr){
document.write(arr[i]+"<br/>");
}
</script>
这样试试
[解决办法]
Array.prototype.in_array = function(v) { for (var i = 0; i < this.length; i ++) if (this[i] == v) return true; return false;}var ar = [];for (var i = 0; i < 50; i ++) { var x = Math.floor(Math.random() * 10000 + 1); //产生 1 - 10000范围内的随机数 while(ar.in_array(x)) x = Math.floor(Math.random() * 10000 + 1); ar.push(x);}alert(ar);
[解决办法]
var i_rang=100;//生成随机数范围,不能小于50var arr = [],a_arr=[];var temp,n;for(var i=0;i<50;i++){ temp=false; do{ n=parseInt(Math.random()*i_rang); if(!arr[n]){ arr[n]=true; temp=true; a_arr.push(n); } }while(!temp)}document.write (a_arr.join("-"));
[解决办法]
<script type="text/javascript">
function GetRandomNum(Min, Max) {
var Range = Max - Min;
var Rand = Math.random();
return (Min + Math.round(Rand * Range));
}
var arr = [];
for (var i = 0; i < 50; i++) {
arr.push(GetRandomNum(1, 100));
}
alert(arr);
</script>
GetRandomNum(1, 100)
1,100,表示在1-100中取任意一个随机数