JS获取随机不重复数

/*
num 要产生多少个随机数
from 产生随机数的最小值
to 产生随机数的最大值
*/
function createRandom(num ,from ,to )
{
var arr=[];
for(var i=from;i<=to;i++)
arr.push(i);
arr.sort(function(){
return 0.5-Math.random();
});
arr.length=num;
return arr;
}

function createRandom2(num , from , to)
{
var arr=[];
var json={};
while(arr.length<num)
{
//产生单个随机数
var ranNum=Math.ceil(Math.random()*(to-from))+from;
//通过判断json对象的索引值是否存在 来标记 是否重复
if(!json[ranNum])
{
json[ranNum]=1;
arr.push(ranNum);
}

}
return arr;


}
alert(createRandom2(10,0,50));//生成10个从0-50之间不重复的随机数

 

先是转载的代码,下附带实例

$(document).ready(function(){
  $(".choose_btn").click(function(){
      $("#all_button a").css("display","none");
      
      var num =$(this).attr("name");
      
      var allcount = $("#all_button a").index()+1;
      createRandom2(num , 0 , allcount);
     }); });

作用:通过点击不同的按钮:1,2,3,4,实现随机显示对应个数的a标签。在判断完不重复后加入这句话

$("#all_button").find('a').eq(ranNum).css("display","block");

 

posted @ 2015-01-14 18:45  我去不科学的-ef  阅读(423)  评论(0编辑  收藏  举报