var ar= new Array('aa','bb','cc'); alert(ar); function selAr(){ var tmp = Math.round(Math.random(ar.length)*ar.length)-1; var re = ar[tmp]; var tmpar = new Array(); for (var i=0;i<ar.length;i++){ if (i != tmp){ tmpar[tmpar.length]=ar[i]; } } ar=tmpar; return re; }selAr(); alert(ar);
alert(ar);
function selAr(){
var tmp = Math.round(Math.random(ar.length)*ar.length)-1;
var re = ar[tmp];
var tmpar = new Array();
for (var i=0;i<ar.length;i++){
if (i != tmp){
tmpar[tmpar.length]=ar[i];
}
}
ar=tmpar;
return re;
}selAr();
alert(ar);
math.random()取到的是0到1之间的正数是这样吧?
我想你做的有点象彩票程序。呵呵
var aryFields=[1,2,3,4,5],rnd
rnd=Math.floor(Math.random()*aryFields.length)
alert("选中:"+aryFields[rnd]);
aryFields=aryFields.slice(0,rnd).concat(aryFields.slice(rnd+1))
//IE5.5+可直接用aryFields.splice(rnd,1)
alert("剩下:"+aryFields)
</script>