본문 바로가기
IT_Developers/Javascript

JavaScript - Intl.NumberFormat을 이용하여 숫자 표현하기 / 내장 함수를 이용해 천단위 콤마 찍기

by 고코더 2021. 11. 1.

 

안녕하세요.

고코더 입니다.

 

이전 시간에 자바스크립트에서 3자리마다 콤마를 찍어 금액을 표현하는 정규식을 만들어봤습니다. 그런데 최신 브라우저에서는 복잡한 정규식을 쓰지 않아도 NumberFormat 함수를 이용해 각 나라에 맞는 통화 방식으로 숫자를 표현할 수 있습니다. 한번 실습해보겠습니다. 

 

1. 가장 기초적인 방법입니다. 아무런 옵션을 주지 않으면, 해당 통화 기호는 US가 되고 우리나라와 같이 천 단위마다 콤마를 찍어 반환 합니다. 

let num = new Intl.NumberFormat().format('10000000000')
console.log(num);

 

 

2. 결과 화면입니다. 이제 천단위 콤마를 한 줄로 해결이 가능합니다.

 

3. 그럼 다른 나라에 통화로 표현해보겠습니다. 독일과 일본입니다. 

//독일
let num_de = new Intl.NumberFormat('de-DE', { style: 'currency', currency: 'EUR' }).format('1000000000');
console.log(num_de);

//일본
let num_jp = new Intl.NumberFormat('ja-JP', { style: 'currency', currency: 'JPY' }).format('1000000000');
console.log(num_jp);

 

4. 각 지정한 나라의 단위에 맞게 숫자가 표현됩니다. 복잡했던 작업이 이제 단순해집니다.

 

5. 그런데 아쉬운 건... ko-kr은 지원하지 않습니다. (왜일까?) 그리고 최신 브라우저에서 지원이 가능합니다. 크롬은 상관없지만 IE는 11부터 사용이 가능합니다. 관리하는 사이트에 따라 사용이 여부를 판단해보세요.

댓글