js—生成指定2個(gè)數(shù)范圍內(nèi)的隨機(jī)數(shù),隨機(jī)顏色(16進(jìn)制,rgb),不同概率的獎(jiǎng)項(xiàng)設(shè)置

之前自己在做瀑布流照片墻時(shí),苦于強(qiáng)迫癥,找了好久也沒找到心儀的圖片,決定用隨機(jī)的顏色+隨機(jī)的高度來模擬不同的圖片。當(dāng)時(shí)用的方法不太好,代碼行數(shù)也較多,剛剛看到一篇文章,發(fā)現(xiàn)里面有關(guān)于隨機(jī)數(shù)的各種事例。下面就引入我所感興趣的(以后會(huì)常用到的)技巧。

  • 生成指定2個(gè)數(shù)范圍內(nèi)的隨機(jī)數(shù)(概率基本相等)
function randomNum(max,min){
        return Math.floor(Math.random()*(max-min+1)+min)
}
  • 十六位進(jìn)制顏色(概率基本相等)
function randomColor(){
    var color="#";
    var colorArr=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"];
    for(i=0;i<6;i++){
        var cur=randomNum(15,0);
        color+=colorArr[cur];
    }
    function randomNum(max,min){
        return Math.floor(Math.random()*(max-min+1)+min)
    }
    return color;
}
  • rgb顏色(概率基本相等)
function randomColor(){
    var color="rgb(";
    for(i=0;i<3;i++){
        var cur=randomNum(255,0);
        if(i>1){
            color+=cur+")"
        }else{
            color+=cur+","
        }
    }
    function randomNum(max,min){
        return Math.floor(Math.random()*(max-min+1)+min)
    }
    return color;
}
  • 不同概率的獎(jiǎng)項(xiàng)設(shè)置(概率不同,自己設(shè)定)
var pri=["一等獎(jiǎng)","二等獎(jiǎng)","三等獎(jiǎng)","參與獎(jiǎng)"];
function updateRandom(){
    var ranNum=Math.random();
    var n=Math.random()/4;
    if(ranNum<0.01){
        return n;
    }
    else if(ranNum<0.04){
        return n+0.25;
    }
    else if(ranNum<0.1){
        return n+0.5;
    }
    else if(ranNum<1){
        return n+0.75;
    }
}
var randomIn=Math.floor(4*updateRandom());
alert(pri[randomIn]);

參考文章:小議Math.random()
原文鏈接:http://www.itdecent.cn/p/a6f8d08cc06d#

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 背景 一年多以前我在知乎上答了有關(guān)LeetCode的問題, 分享了一些自己做題目的經(jīng)驗(yàn)。 張土汪:刷leetcod...
    土汪閱讀 12,923評論 0 33
  • body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoot...
    wangyw閱讀 659評論 0 0
  • 第一章: JS簡介 從當(dāng)初簡單的語言,變成了現(xiàn)在能夠處理復(fù)雜計(jì)算和交互,擁有閉包、匿名函數(shù), 甚至元編程等...
    LaBaby_閱讀 1,761評論 0 6
  • 第5章 引用類型(返回首頁) 本章內(nèi)容 使用對象 創(chuàng)建并操作數(shù)組 理解基本的JavaScript類型 使用基本類型...
    大學(xué)一百閱讀 3,679評論 0 4
  • 一 兩行,煮淚 三人行,拙者下 四目兩行,對眼撩花,偏堣之別,始于情話 南山有一木,蒼老又僵化。秋落梨花雨,宮制萬...
    狼吻與蝶花閱讀 205評論 0 4

友情鏈接更多精彩內(nèi)容