코딩하며 유용한 정보가 생각날 때마다 작성하는 글입니다.
function addCommas(num) {
return num.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',');
}
console.log(addCommas(123456789)); // '123,456,789'
위 예시 코드는 숫자를 문자열로 변환한 후, 천 단위로 콤마(,)를 추가하는 addCommas
함수를 정의하고 있습니다.
num.toString()
을 호출하여 num
값을 문자열로 변환한 후, replace
메소드를 사용하여 정규식을 이용하여 천 단위로 콤마를 추가합니다.
정규식 /B(?=(\d{3})+(?!\d))/g
은 전방 탐색을 이용하여 문자열의 일부가 \d{3} 패턴(3개의 연속된 숫자)으로 이루어져 있을 경우, 그 전에 위치한 문자에 대해서만 콤마를 추가하도록 합니다. \B
는 단어 경계가 아닌 부분에 대해서만 일치하는 것을 의미하며, (?=(\d{3})+(?!\d))
는 3개의 연속된 숫자로 끝나는 부분 문자열에 대해서만 일치하는 것을 의미합니다. 마지막으로 g 플래그는 전체 문자열에 대해 모든 일치하는 부분을 찾도록 합니다.