日期:2014-05-16 浏览次数:20485 次
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;
//生成随机数范围,不能小于50
var 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中取任意一个随机数