js代码随机返回数组中一个数字

<ahref="返回的随机数.html"><imgwidth="67"height="60"class="tn-img"title="演技有待进步"alt="推荐的gif... <a href="返回的随机数.html" >
<img width="67" height="60" class="tn-img" title="演技有待进步" alt="推荐的gifs" src="tn-6760/返回的随机数.jpg" />
</a>
我想在<a></a>之间产生一个随机网页和对应的图片
下面这个代码是我自己写的,却运行的时候毫无反应,求大神改进:
var oriNum=new Array[1,2,3,4,5,6,7,8,9,10,11,12,13];
var resNum=new Array(12);
function getNum(num){
for(var i=0;i<resNum.length;i++){
var j=Math.floor(Math.random()*oriNum.length);
resNum[i]=oriNum[j];
for(var x=0;x<i;x++)
if(resNum[x]==resNum[i]){
i=i-1;
break;

}
}

return resNum[num];
}
或者赠送小弟一个完整的代码
展开
 我来答
百度网友2571d37bb
2015-10-10 · 知道合伙人软件行家
百度网友2571d37bb
知道合伙人软件行家
采纳数:1971 获赞数:7905
前端工程师

向TA提问 私信TA
展开全部
随机那最简单的就是用随机数了。下面是简单的例子。仅供参考:
<body>
<div style="width:100px; height:100px; border:1px solid #ccc;"></div>
</body>
<script type="text/javascript">
var oDiv = document.getElementsByTagName('div')[0];
var arr = [1,2,3,4,5,6,7,8,94,1,3,4,5,6];
oDiv.onclick=function(){
oDiv.innerHTML = arr[Math.floor(Math.random()*arr.length)];
};
</script>
tsotsi
2014-03-25 · TA获得超过940个赞
知道小有建树答主
回答量:1367
采纳率:55%
帮助的人:691万
展开全部
var oriNum=new Array(1,2,3,4,5,6,7,8,9,10,11,12,13);
function getNum(num){
var getOne=Math.ceil(Math.random()*num.length);

return num[getOne];
                                       

}
alert(getNum(oriNum));
追问
怎么样从oriNum中随机抽出5个互不相同的数放在一个新的数组resNum中?
追答
....你这。。。
       var oriNum=new Array(1,2,3,4,5,6,7,8,9,10,11,12,13);
function getNum(num){
var getOne=Math.floor(Math.random()*num.length);
  
return num[getOne];
                                         
                      
}
var resNum=[];
while(resNum.length<5){
var tmp=getNum(oriNum);
var flag=true;
for(var i in resNum){
    if(resNum[i]==tmp){
        
        flag=false;
    }
    
}
if(flag){
    resNum[resNum.length]=tmp;
}
}
console.log(resNum);

方法2.递归
var oriNum=new Array(1,2,3,4,5,6,7,8,9,10,11,12,13);
function getNum(num,x){
   
 var x=x||1;
var getOne=Math.floor(Math.random()*num.length);

var tmp1=[];
tmp1.push(num[getOne]);
num.splice(getOne,1);
x=x-1;
    if(x>0){
    tmp1=tmp1.concat(getNum(num,x));
    }
return tmp1;                                                        
}
var resNum=getNum(oriNum,5);
    console.log(resNum);
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-03-25
展开全部
发电示范试点方式的方式
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式