Javascript 숫자에 천단위로 콤마(,) 찍기

자바스크립트 Number, String 클래스의 prototype 에 format() 라는 함수를 추가시키면 어디에서든지 간단하게 숫자에다 천단위로 콤마를 찍을 수 있다.



솟스코드
// 숫자 타입에서 쓸 수 있도록 format() 함수 추가
Number.prototype.format = function(){
	if(this==0) return 0;

	var reg = /(^[+-]?\d+)(\d{3})/;
	var n = (this + '');

	while (reg.test(n)) n = n.replace(reg, '$1' + ',' + '$2');

	return n;
};

// 문자열 타입에서 쓸 수 있도록 format() 함수 추가
String.prototype.format = function(){
	var num = parseFloat(this);
	if( isNaN(num) ) return "0";

	return num.format();
};



// 숫자 타입 test
var num = 123456.012;
console.log(num.format());               // 123,456.012

num = 13546745;
console.log(num.format());               // 13,546,745

// 문자열 타입 test
console.log("12348".format());           // 12,348
console.log("12348.6456".format());      // 12,348.6456



자바스크립트의 프로토타입을 가지고 쪼물락 거리면 재미진걸 많이 할 수 있는것 같다.