Intl.NumberFormat 주의사항

해외송금 쪽 프론트를 담당하고 있는데 Intl.NumberFormat 로 인스턴스를 생성할 때 locale 을 지정하지 않으면 브라우저에서 설정한 위치 기준으로 locale 이 설정된다.

이러면 문제가 되는게 개발자의 국가와 사용자의 국가가 다를경우

메서드가 반환하는 값이 달라지게 된다.

예를들어 한국, 미국 기준 ( ko-kr , en-US ) 과 프랑스 기준이 다르기 때문에 문제가 될 수 있다.

그래서 왠만하면 en-US 로 고정하는 것이 좋다.

export const NumberToCurrency = (num: number | string) => new Intl.NumberFormat('en-US').format(currencyToNumber(num))

locale 참고

https://www.techonthenet.com/js/language_tags.php

좋은 웹페이지 즐겨찾기