More Games - PAINONE
Android games
sites.google.com
/* 금액 한글배열 */ var nString = new Array(); nString[0] = ""; nString[1] = "일"; nString[2] = "이"; nString[3] = "삼"; nString[4] = "사"; nString[5] = "오"; nString[6] = "육"; nString[7] = "칠"; nString[8] = "팔"; nString[9] = "구"; /* 금액단위 한글배열 */ var nbString = new Array(); nbString[0] = ""; nbString[1] = ""; nbString[2] = "십"; nbString[3] = "백"; nbString[4] = "천"; nbString[5] = "만"; nbString[6] = "십"; nbString[7] = "백"; nbString[8] = "천"; nbString[9] = "억"; nbString[10] = "십"; nbString[11] = "백"; nbString[12] = "천"; nbString[13] = "조"; nbString[14] = "십"; nbString[15] = "백"; nbString[16] = "천"; function NumberString(obj) { var nStr = document.getElementById("nStr"); var str = obj.value; var strCode = ""; var codeStr = ""; var nHan = ""; var cnt = 0; /* 천조이상이면 */ if(str.length > 16) { //alert("한글 표현은 천조 이하에 금액까지 가능합니다."); //경고창 후 마지막 입력값 제거 필요 귀찮아서 안함!! ㅡㅡ; return false; } /* 뒷자리부터 루프 */ for (var i = str.length; i > 0; i--) { /* 유니코드 구하기 */ strCode = str.charCodeAt(i-1); /* 숫자가 맞다면 */ if(strCode >= 48 && strCode <= 57) { cnt++; // 단위계산을 위해 카운팅 codeStr = Number(String.fromCharCode(strCode)); // Number형으로 if(codeStr != 1) { if(codeStr == 0) { if(cnt/5 == 1) { // 만단위표현 nHan = nbString[5] + nHan; } else if(cnt/9 == 1) { // 억단위표현 nHan = nbString[9] + nHan; } else if(cnt/13 == 1) { // 조단위 표현 nHan = nbString[13] + nHan; } } else { /* 0이 아니면 입력값에 한글과 단위 */ nHan = nString[codeStr] + nbString[cnt] + nHan; } } else if(codeStr == 1 && i == str.length) { /* 1이고 마지막입력값이면 한글 일 표현 */ nHan = nString[codeStr] + nHan; } else { if(codeStr == 1 && i == 1 && (cnt == 9 || cnt == 13)) { /** * 입력값이 1이고 첫입력값이며 단위가 억이거나 조이면 * 예) 일억 또는 일조 * 억이하 단위에선 일을 표현안되기 때문에 일백만원을 백만원 일십만원을 십만원으로 표현되고 * 억, 조 단위는 일억원 일조원 으로 표현하기 위해 */ nHan = nString[codeStr] + nbString[cnt] + nHan; } else { nHan = nbString[cnt] + nHan; } } /* 단위표현에서 억만, 조억에 두번째 단위 제거 (이거 때문에 삽질했네..) */ nHan = nHan.replace('억만','억').replace('조억','조'); } else { //alert("숫자로 입력하세요."); //경고창 후 마지막 입력값 제거 필요 귀찮아서 안함!! ㅡㅡ; return false; } } nStr.innerHTML = nHan + "원"; }
'Language > JavaScript' 카테고리의 다른 글
지정한 색상코드로 같은 계열에 색상구하기 (0) | 2010.05.23 |
---|---|
배열에 지정값을 가장 마지막으로 옮기기 (0) | 2010.05.23 |
자바스크립트 배열에서 지정키 제거하고 배열을 다시 만들어 리턴 (0) | 2010.05.23 |
배열에 숫자형에 값을 정렬하여 새로 키값에 대입 (0) | 2010.05.23 |
주민, 법인, 사업자 등 체크 (0) | 2010.05.23 |
More Games - PAINONE
Android games
sites.google.com