[js] 숫자를 한글로 읽어주기
퇴근길에 다음 도착 버스 안내하는 방송을 듣다가 만들어 볼 생각을 가졌습니다; 어디 쓸데가 있을까 싶은데.. 어..언젠가는.. 한번은.. 쓰겠죠;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
Number.prototype.getHangul = function() { var numberic = ["","일","이","삼","사","오","육","칠","팔","구"]; var numunit = ["","","십","백","천","만","십만","백만","천만","억","십억","백억","천억"]; var str = "", tmp = ""; var splited = []; for(var i = 0; i < String(this).length; i ++) { splited.push(String(this).substring(i, i+1)); } for(var i = 0, x = String(this).length; x > 0; -- x, ++ i) { tmp = numberic[splited[i]]; if(tmp) { if(x > 4 && numberic[splited[i + 1]]) { tmp += numunit[x].substring(0, 1); } else { tmp += numunit[x]; } } str += tmp; } return str; }; var num = 16642; console.log(num.getHangul()); |
http://jsfiddle.net/rootbox/cwmKs/ 에서 실행해보고 수정해보실 수 있습니다. Number 객체에 프로토타입으로 선언해서 위 예제처럼 사용할 수 있게 했습니다. 몇 번씩 실행 결과를 봐가면서 수정한 코드라서 구멍이 있을 수 …