js - 지정 한 2 개 범위 내의 랜 덤 수 생 성, 랜 덤 색상 (16 진법, rgb), 서로 다른 확률 의 상 설정

1895 단어
앞서 자신 은 폭포 흐름 사진 벽 을 만 들 때 강박 증 에 시 달 려 오랫동안 마음 에 드 는 그림 을 찾 지 못 해 랜 덤 색상 + 랜 덤 높이 로 다른 그림 을 모 의 하기 로 했다.당시 에는 사용 하 는 방법 이 좋 지 않 았 고 코드 줄 수도 많 았 는데 방금 글 을 보 니 난수 에 관 한 여러 가지 사례 가 있 었 다.다음은 제 가 관심 있 는 기술 을 도입 하 겠 습 니 다.
  • 지 정 된 2 개 범위 내의 난수 생 성 (확률 은 기본적으로 같다)
  • function randomNum(max,min){
            return Math.floor(Math.random()*(max-min+1)+min)
    }
    
  • 16 비트 진 색상 (확률 이 거의 같 음)
  • 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;
    }
    
  • 확률 에 따라 상 설정 (확률 에 따라 자신 설정)
  • 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#

    좋은 웹페이지 즐겨찾기