웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
숫자를 한글로 변환하는 함수
2003.01.03 00:58
<script>
function num2han(num){
/*
* 숫자2한글 스크립트
* 만든넘 : 행복한고니(gonom9@empal.com)
*/
var i, j=0, k=0;
var han1 = new Array("","일","이","삼","사","오","육","칠","팔","구");
var han2 = new Array("","만","억","조","경","해","시","양","구","간");
var han3 = new Array("","십","백","천");
var result="", hangul = num + "", pm = "";
var str = new Array(), str2="";
var strTmp = new Array();
if(parseInt(num)==0) return "영"; //입력된 숫자가 0일 경우 처리
if(hangul.substring(0,1) == "-"){ //음수 처리
pm = "마이너스 ";
hangul = hangul.substring(1, hangul.length);
}
if(hangul.length > han2.length*4) return "too much number"; //범위를 넘는 숫자 처리 자리수 배열 han2에 자리수 단위만 추가하면 범위가 늘어남.
for(i=hangul.length; i > 0; i=i-4){
str[j] = hangul.substring(i-4,i); //4자리씩 끊는다.
for(k=str[j].length;k>0;k--){
strTmp[k] = (str[j].substring(k-1,k))?str[j].substring(k-1,k):"";
strTmp[k] = han1[parseInt(strTmp[k])];
if(strTmp[k]) strTmp[k] += han3[str[j].length-k];
str2 = strTmp[k] + str2;
}
str[j] = str2;
if(str[j]) result = str[j]+han2[j]+result;
//4자리마다 한칸씩 띄워서 보여주는 부분. 우선은 주석처리
//result = (str[j])? " "+str[j]+han2[j]+result : " " + result;
j++; str2 = "";
}
return pm + result; //부호 + 숫자값
}
</script>
MS IE 6.0 SP1에서만 테스트해봤지만 넷스에서도 사용가능할 겁니다.(Maybe... -_-;;)
값을 반환해주는 함수이므로 document.write 등과 연계해서 쓰는 부분은 알아서... 하시구요... 일부러 "일천","일만" 과 같은 단어는 "천"이나 "만"으로 바꾸지 않고 놔두었습니다. 결제시스템에 사용할 목적으로 만든 것이라 그런 것도 필요해서요.
무단 개선 및 건전딴지 적극 환영입니다.
단, 무단개선후에 저에게도 조금 지혜를 나누어 주시길... 헤헤헤... -_-;;
예제 페이지 첨부하지 않았습니다.
function num2han(num){
/*
* 숫자2한글 스크립트
* 만든넘 : 행복한고니(gonom9@empal.com)
*/
var i, j=0, k=0;
var han1 = new Array("","일","이","삼","사","오","육","칠","팔","구");
var han2 = new Array("","만","억","조","경","해","시","양","구","간");
var han3 = new Array("","십","백","천");
var result="", hangul = num + "", pm = "";
var str = new Array(), str2="";
var strTmp = new Array();
if(parseInt(num)==0) return "영"; //입력된 숫자가 0일 경우 처리
if(hangul.substring(0,1) == "-"){ //음수 처리
pm = "마이너스 ";
hangul = hangul.substring(1, hangul.length);
}
if(hangul.length > han2.length*4) return "too much number"; //범위를 넘는 숫자 처리 자리수 배열 han2에 자리수 단위만 추가하면 범위가 늘어남.
for(i=hangul.length; i > 0; i=i-4){
str[j] = hangul.substring(i-4,i); //4자리씩 끊는다.
for(k=str[j].length;k>0;k--){
strTmp[k] = (str[j].substring(k-1,k))?str[j].substring(k-1,k):"";
strTmp[k] = han1[parseInt(strTmp[k])];
if(strTmp[k]) strTmp[k] += han3[str[j].length-k];
str2 = strTmp[k] + str2;
}
str[j] = str2;
if(str[j]) result = str[j]+han2[j]+result;
//4자리마다 한칸씩 띄워서 보여주는 부분. 우선은 주석처리
//result = (str[j])? " "+str[j]+han2[j]+result : " " + result;
j++; str2 = "";
}
return pm + result; //부호 + 숫자값
}
</script>
MS IE 6.0 SP1에서만 테스트해봤지만 넷스에서도 사용가능할 겁니다.(Maybe... -_-;;)
값을 반환해주는 함수이므로 document.write 등과 연계해서 쓰는 부분은 알아서... 하시구요... 일부러 "일천","일만" 과 같은 단어는 "천"이나 "만"으로 바꾸지 않고 놔두었습니다. 결제시스템에 사용할 목적으로 만든 것이라 그런 것도 필요해서요.
무단 개선 및 건전딴지 적극 환영입니다.
단, 무단개선후에 저에게도 조금 지혜를 나누어 주시길... 헤헤헤... -_-;;
예제 페이지 첨부하지 않았습니다.
제목 | 글쓴이 | 날짜 |
---|---|---|
텍스트 폼 / 전체선택 하기 자바스크립 | mnemosyne | 2002.12.24 |
색다른 링크법(새창) [2] | BIRDY™ | 2002.12.30 |
mid 랜덤으로 듣기 ... [2] | 아벨라 | 2003.01.02 |
숫자를 한글로 변환하는 함수 [1] | 행복한고니 | 2003.01.03 |
크롬리스에 응용할만한 소스;; [3] | MYMob.INT. | 2003.01.05 |
갤러리스킨에 쓰면 좋을 것 같은 미리보기(수정2) [10] | 행복한고니 | 2003.01.06 |
[re] select form 으로 새 창 띄우기(간단버전) [3] | RedEye | 2003.01.27 |
select form 으로 새 창 띄우기 [4] | 당근당근 | 2003.01.07 |
홈페이지 패스워드(암호) 걸기 소스 [6] | keymove | 2003.01.09 |
혹시 이런것도 될까-_-;;. 시노부 플레이어에서 랜덤 모드 사용자가 택하게 하기 | TuTy | 2003.01.09 |
링크가 걸려있는 모든 이미지에 마우스 올리면 서서히 밝아지게 하는 소스입니다. [3] | 정해식 | 2003.01.09 |
자바스크립트용 계산기 v1.0 [4] | 찐군 | 2003.01.09 |
[1분짜리 팁!] 홈페이지 입장 여부 묻는 폼 띄우기! [2] | 찐군 | 2003.01.09 |
IE6SP1 에서 작동하는 크롬리스윈도우!![ByKlein_Chromeless_Window1.0] [13] | 술도짱 | 2003.01.10 |
1 분마다 배경이 빠뀌는 소스...입니다. [1] | q333 | 2003.01.12 |
디지털 시계입니다. [8] | q333 | 2003.01.12 |
성인인증 받는 소스입니다..... [17] | q333 | 2003.01.12 |
[레드-자바 스크립트초보] 더블클릭하면 경고창 뜬후 사이트 이동하기 [7] | 레드 | 2003.01.17 |
텍스트 폼에 커서가 미리 깜빡이도록... [8] | 카리 | 2003.01.22 |
로그인과 로그아웃을 체크하는 방법입니다. [3] | 이영호 | 2003.01.24 |