반응형
Input창에 숫자 입력시 천단위 숫자에 ,를 찍을 때 사용하는 JavaScript 함수로 의외로 많이 사용함수로
정규식을 사용하여 소숫점 숫자를 제외한 천단위에 , 를찍어준다
숫자형식의 String 값에 천단위 , 를 찍는 JavaScript 방법
function setComma(number) {
var str = number + "";
var int;
var decimal;
if (str.indexOf(".") != -1) { //소숫점으로 문자분기
int = str.split(".")[0];
decimal = str.split(".")[1];
int = Comma(int);
str = int + "." + decimal;
} else {
str = Comma(str);
}
return str;
}
function Comma(string) {
// ±기호, 소수점, 숫자가 아닌 부분은 지우기.
string = string.replace(/^\s+|\s+$|,|[^+-\.\d]/g, "")
// 필요한 정규식.
var regExp = /([+-]?\d+)(\d)(\.\d+)?/;
// 쉼표 삽입.
while (regExp.test(string)) string = string.replace(regExp, "$1" + "," + "$2" + "$3");
return string;
}
반대로 컴마가 찍혀있는 String값의 컴마를 제거하는 함수
function uncomma(string) {
string = String(string);
return string.replace(/,/gi,"");
}
728x90
반응형
'Web > JavaScript' 카테고리의 다른 글
[Javascript] 문자열 앞에 0 채우기 (0) | 2021.11.15 |
---|---|
[JavaScript] 자주쓰는 정규 표현식 (2) | 2021.11.13 |
[Javascript] html2canvas + jspdf 사용방법 (0) | 2021.11.05 |
[JavaScript] CheckBox 중복 방지 (0) | 2018.07.28 |
[JavaScript] Ajax 리턴 Value 얻기 (0) | 2018.07.27 |