Web/JavaScript

[JavaScript] 천단위 , 찍기

93_seong.on2e 2018. 7. 26. 16:46
반응형
 
 
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
반응형