>웹 프론트엔드 >JS 튜토리얼 >JS_Basic 지식으로 구현된 난수 생성을 위한 4가지 함수 공유

JS_Basic 지식으로 구현된 난수 생성을 위한 4가지 함수 공유

WBOY
WBOY원래의
2016-05-16 16:14:341161검색

첫 번째 방법

코드 복사 코드는 다음과 같습니다.

/*
*@desc: 임의의 문자열 생성
*@remark: toString 메서드는 기본을 매개 변수로 받을 수 있으며 기본은 2에서 36까지 제한됩니다. 지정하지 않으면 기본 진수는 10진수입니다.
*/
함수 generateRandomAlphaNum(len) {
var rdmString = "";
for (; rdmString.length rdmString.substr(0, len)을 반환합니다.
}

두 번째 방법

코드 복사 코드는 다음과 같습니다.

//JS는 .net의 NewID()와 유사한 GUID 함수를 생성합니다.
함수 S4() {
Return (((1 Math.random()) * 0x10000) | 0).toString(16).substring(1);
}

함수 NewGuid() {
Return (S4() S4() "-" S4() "-" S4() "-" S4() "-" S4() S4() S4());
}

세 번째 방법

코드 복사 코드는 다음과 같습니다.

//JS는 .net의 NewID()와 유사한 GUID 함수를 생성합니다.
함수 newGuid() {
var guid = "";
for (var i = 1; i <= 32; i ) {
          var n = Math.floor(Math.random() * 16.0).toString(16);
        guid = n;
If ((i == 8) || (i == 12) || (i == 16) || (i == 20))
            guid = "-";
}
복귀안내;
}

네 번째 방법

코드 복사 코드는 다음과 같습니다.

/*
*@desc: 무작위 문자열 생성
*@demo:console.log(ranStr());
*/
;(함수(){
//숫자 0~9, 대문자, 소문자, ASCII 또는 UNICODE 인코딩(10진수), 총 62개
var charCodeIndex = [[48,57],[65,90],[97,122]];
var charCodeArr = [];

함수 getBetweenRound(min,max){
          return Math.floor(min Math.random()*(max-min));
};

함수 getCharCode(){
for(var i=0,len=3;i           var thisArr = charCodeIndex[i];
for(var j=thisArr[0],thisLen=thisArr[1];j<=thisLen;j ){
                  charCodeArr.push(j);
            }
}
}

함수 ranStr(slen){
슬렌 = 슬렌 20;
charCodeArr.length<62 && getCharCode();

var res = [];
for(var i=0;i             var index = getBetweenRound(0,61);
              res.push(String.fromCharCode(charCodeArr[index]));
}
           res.join('')을 반환합니다.
};

this.ranStr = ranStr;
})();

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.