Rumah  >  Artikel  >  hujung hadapan web  >  JS实现去重的随机数生成

JS实现去重的随机数生成

php中世界最好的语言
php中世界最好的语言asal
2018-04-17 15:49:082716semak imbas

这次给大家带来JS实现去重的随机数生成,JS实现去重随机数生成的注意事项有哪些,下面就是实战案例,一起来看一下。

1.实验前准备:

Math函数的理解

数组方法的理解

2.实验操作:

<!DOCTYPE html> 
<html lang="en"> 
<head> 
  <meta charset="UTF-8"> 
  <title>随机数生成</title> 
</head> 
<style type="text/css"> 
body{font-size: 20px;} 
#box{border:3px solid #666;width:500px;height:300px;margin:20px auto;padding:20px;position: relative;} 
#min,#max{width: 60px;margin:5px;} 
#num{margin:15px;width: 115px;} 
button{width:80px;height:30px;letter-spacing: 10px;font-size: 15px;} 
h1{margin: 10px 90px;} 
</style> 
<body> 
<p> 
  <p id="box"> 
    <h1>课堂提问生成器</h1> 
    <label>产生随机数的范围:</label><input type="text" id="min">--<input type="text" id="max"></br> 
    <label>需要产生多少个随机数:</label><input type="text" id="num"></br> 
    <button onclick="produce()">生成</button> 
    <p id="result"></p> 
  </p> 
</p> 
</body> 
<script type="text/javascript"> 
  function produce(){ 
    var omin=document.getElementById("min").value; 
    var max=document.getElementById("max").value; 
    var num=document.getElementById("num").value; 
    var oArray=new Array; 
    var result=""; 
    var min=omin; 
    for(var i=0;i<=max-omin;i++){ 
       oArray[i]=min; 
       min++; 
        console.log(oArray[i]); 
    } 
    //没有去重的原代码 
    // for(var i=0;i<num;i++){ 
    // result+=parseInt(Math.random()*(max-min+1) + min)+","; 
    // } 
    oArray.sort(function(){return 0.5 - Math.random(); })  //把按顺序存储的数组打乱 
    for(var i=0;i<num;i++){ 
    result+=oArray[i]+","; 
  } 
  document.getElementById("result").innerText=result; 
} 
</script> 
</html>

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

推荐阅读:

vue中数组变化检测问题

vue项目的History模式

Atas ialah kandungan terperinci JS实现去重的随机数生成. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:axios处理http发送Post和getArtikel seterusnya:用AngualrJs使用定时器