如何寫隨機代碼


有時候寫隨機代碼搞的很麻煩,每次寫都要想,下面是我常用的一些隨機代碼,有不足之處還望一掃而過的朋友給點新意。

  • 1/2概率
    let rand = 0.5-Math.random() > 0 ? true : false;
  • 1/3、2/3概率(其他依次類推)
    let rand = 1/3 - Math.random() > 0 ? true : false;
  • 0-n 、1-n、m-n隨機整數
    let rand = Math.floor((n +1) * Math.random());//0=< rand <= n
    let rand = Math.floor(1+n * Math.random());//1=< rand <= n
    let rand = Math.floor(m+Math.floor((n-m+1)* Math.random()));//m=< rand <= n
  • 隨機一個數組(主要利用數組排序的方法)
    let arr = [1,2,3,4,5,6,7,8,9,0];
    arr.sort(()=>0.5-Math.random());
    console.log(arr);//1, 5, 3, 2, 4, 6, 8, 7, 0, 9
  • 隨機數也可以通過getTime(),因為getTime()的最后幾位是隨機的
    new Date().getTime()
    1525398685676
    new Date().getTime()
    1525398692149
    new Date().getTime()
    1525398707429
    new Date().getTime()
    1525398709308
    new Date().getTime()
    1525398710421
    
    //
    function getRandom(){
       let x = new Date().getTime();
       let y = Math.floor(x/1000);   
       return x - y*1000;       
    }

     




免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM