前端学习Web前端之路

js—生成指定2个数范围内的随机数,随机颜色(16进制,rgb)

2016-03-25  本文已影响1090人  webCoder

之前自己在做瀑布流照片墙时,苦于强迫症,找了好久也没找到心仪的图片,决定用随机的颜色+随机的高度来模拟不同的图片。当时用的方法不太好,代码行数也较多,刚刚看到一篇文章,发现里面有关于随机数的各种事例。下面就引入我所感兴趣的(以后会常用到的)技巧。

function randomNum(max,min){
        return Math.floor(Math.random()*(max-min+1)+min)
}
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;
}
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;
}
var pri=["一等奖","二等奖","三等奖","参与奖"];
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.jianshu.com/p/a6f8d08cc06d#

上一篇下一篇

猜你喜欢

热点阅读