假如我把数据库中的数据已取出放在一个数组aryFields里?怎样让随机数从我这个数组范围中抽取?急急急。。在线等待。

leojschen 2002-11-14 09:22:17
假如我把数据库中的数据已取出放在一个数组aryFields里?怎样让随机数从我这个数组范围中抽取?急急急。。
...全文
38 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
qiushuiwuhen 2002-11-14
  • 打赏
  • 举报
回复
<script>
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>
随风奔跑 2002-11-14
  • 打赏
  • 举报
回复
不好意思,楼主,插一句。
math.random()取到的是0到1之间的正数是这样吧?
我想你做的有点象彩票程序。呵呵
gzh_seagull 2002-11-14
  • 打赏
  • 举报
回复
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);
leojschen 2002-11-14
  • 打赏
  • 举报
回复
老大,就是不知道怎样去啊?
gzh_seagull 2002-11-14
  • 打赏
  • 举报
回复
把选中的号码从数组中去掉
leojschen 2002-11-14
  • 打赏
  • 举报
回复
怎样把已选中的号码排除在下一轮抽奖范围外?
qiushuiwuhen 2002-11-14
  • 打赏
  • 举报
回复
alert(aryFields[Math.floor(Math.random()*aryFields.length)])
gzh_seagull 2002-11-14
  • 打赏
  • 举报
回复
aryFields[Math.round(Math.random(aryFields.length)*aryFields.length-1)]

87,955

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧