정규식을 사용하거나 3자리마다 쪼개서 추가하는 방법 등, 다양한 방법이 존재하지만 가장 쉬운 방법은 toLocaleString() 메서드를 사용하는 방법입니다.
기본 코드
String.toLocaleString();
// 예시
(15000).toLocaleString(); // 15,000
포맷할 Number 타입의 숫자에 toLocaleString() 메서드를 사용하여 콤마를 표시해줍니다.
예시 코드
const price = "12000"; // <- String Type
const format = Number(price).toLocaleString();
console.log(format);
// 12,000
주의할 점은 toLocaleString() 메서드는 String 타입이 아닌 Number 타입이 여야 합니다.
하지만 해당코드는 소수점을 무시하고 3자리마다 콤마를 찍기 때문에 소수점은 제외시켜줄 필요가 있습니다.
소수점 제외
const price = "12000.2000"; // <- String Type
const parts = price.toString().split('.')
const result = Number(parts[0]).toLocaleString() + (parts[1] ? '.' + parts[1] : '');
console.log(result);
// '12,000.2000'
참고자료