손원규

시리얼넘버를 만들려고 하는데요....

알파벳 + 숫자 = 조합10자리로 랜덤한 번호가 1000개 정도 필요한데요
 
상품의 정품번호로 쓸려구요...
 
자바로 구현했던 소스가 있었는데 없어졌네요...
 
어떻게 하면 될까요?
|

댓글 3개

자문자답 입니다.
코맨트 빨리 다신분께 포인트 드려요...^^

<script language="javascript">
var WordMin=11;//최소 문자
var WordLength=12;//최대문자

AnsiArray=new Array();AnsiRoom=new Array();AscCharNum=new Array()
AnsiArray[0]=[49,57] //asc 숫자코드 범위 48번 0을 뺌(혼동되어서...)
AnsiArray[1]=[65,90]//알파벳 대문자 범위
AnsiArray[2]=[65,90]//알파벳 소문자 범위
//AnsiArray[1]=[65,90]//알파벳 대문자 범위
//AnsiArray[2]=[97,122]//알파벳 소문자 범위
//위에서 다른 asc숫자코드만 넣어주면 다양한 조합이 되겠지요.
//예)AnsiArray[3]=[122,255]

function AnsiChar(){
var Start=0,End=1,cnt=0
for(i=0;i<=AnsiArray.length-1;i++) {
for(j=AnsiArray[i][Start];j<=AnsiArray[i][End];j++){
AnsiRoom[cnt] = j;
cnt++
}
}
}


function MakeCharNum(){
AscCharNum=AnsiRoom;
AscNum=parseInt(Math.random()*AscCharNum.length);
return AscNum;
}

function rnd(){
WordRangr=parseInt(Math.random()*WordLength);
if (WordRangr>=WordMin){return WordRangr;}
else{return rnd();}
}


function MakeWord(){
var Word="";
for(i=0;i<=rnd();i++){
Word+=String.fromCharCode(AnsiRoom[MakeCharNum()]);
}
return Word;
}
AnsiChar();
MakeCharNum();

for (k=0;k<=1000;k++){ // 반복 갯수
document.write(MakeWord()+"<br>")
}
</script>
코멘트~^^;
명함아이님 코멘트 감사^^
답변체택했습니다.^^;

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기
🐛 버그신고