您的位置:首页 > 其它

随机得到1-20之间的10个不相同的随机数

2016-08-12 11:19 309 查看
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>10个随机数不相同</title>
</head>
<body>
<h1 id="con"></h1>
<script>
var con=document.getElementById('con');
var arr=[];//第一种方法
for (var i = 0; i < 10; i++) {
var x=parseInt(Math.random()*20+1);
var same=false;//判断是否有相同的数字
for (var i = 0; i < arr.length; i++) {
if (arr[i]==x) {
same=true;
i--;
break;
}
}
if (same==false) {
arr.push(x);
}
}
var arr = (function(){//第二种方法
var _arr = [];
for(var i=1;i<=20;i++){
_arr.push(i);
}
return _arr;
})().sort(function(a,b){
return Math.random()-0.5;//随机排序
}).slice(0,10);//截取前10个数字;
con.innerHTML=arr;

//下面是我家的小可爱写的,佩服她的脑洞;
var arr=[parseInt(Math.random()*20)+1];//给数组第一个数取一个随机数
for (var i = 1; i < 10; i++) {
var r=parseInt(Math.random()*20)+1;
arr.push(r);//先插入数组
console.log(arr);
for (var j = 0; j < i; j++) {
if (arr[j]==r) {//若有相同的就把新插入的树删除,再接着循环
arr.pop();
i--;
break;
}
}
}
con.innerHTML=arr;
</script>
</body>
</html>


 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐