자바스크립트 Intl API를 이용하여 지역화된 통화 변환하기

지역화는 웹 애플리케이션에서 중요한 요소입니다. 사용자들이 통화를 표시할 때 자신의 지역에 맞는 형식으로 통화를 변환해 줄 필요가 있습니다. 자바스크립트 Intl API를 사용하면 간단하게 이 작업을 수행할 수 있습니다.

Intl.NumberFormat을 사용하여 통화 변환하기

Intl.NumberFormat은 자바스크립트에서 지역화된 숫자 형식을 지원하는 객체입니다. 통화를 변환하기 위해 사용할 수 있습니다.

// 통화를 변환할 수량과 통화 코드 설정
const amount = 12345.67;
const currencyCode = "USD";

// Intl.NumberFormat 객체 생성
const formatter = new Intl.NumberFormat('en-US', {
  style: 'currency',
  currency: currencyCode,
});

// 숫자를 통화 형식으로 변환
const formattedAmount = formatter.format(amount);

console.log(formattedAmount);

위의 코드에서는 amount 변수에 변환할 통화의 수량을 저장하고, currencyCode 변수에 통화 코드를 설정합니다. 그리고 Intl.NumberFormat 객체를 생성하여 style 속성을 ‘currency’로 설정하고, currency 속성에 currencyCode 변수를 할당합니다.

formatter.format(amount)를 호출하여 amount 변수를 통화 형식으로 변환합니다. 이렇게 변환된 통화를 formattedAmount 변수에 저장하고, console.log 함수를 통해 결과를 출력합니다.

위의 코드를 실행하면, 12345.67가 미국 달러 통화 형식으로 변환되어 $12,345.67가 출력됩니다.

다른 언어 및 지역에 대한 통화 변환

Intl.NumberFormat 객체를 생성할 때 첫 번째 인자에 언어 및 지역 코드를 설정하는데, 이를 통해 다른 언어 및 지역에 맞는 통화 형식으로 변환할 수 있습니다.

const amount = 12345.67;
const currencyCode = "EUR";

// 영어로 통화 변환
const formatterEn = new Intl.NumberFormat('en-US', {
  style: 'currency',
  currency: currencyCode,
});

// 독일어로 통화 변환
const formatterDe = new Intl.NumberFormat('de-DE', {
  style: 'currency',
  currency: currencyCode,
});

const formattedAmountEn = formatterEn.format(amount);
const formattedAmountDe = formatterDe.format(amount);

console.log(formattedAmountEn); // €12,345.67
console.log(formattedAmountDe); // 12.345,67 €

위의 코드는 currencyCode 변수를 “EUR”로 설정하고, 영어로 변환한 통화 형식과 독일어로 변환한 통화 형식을 출력하는 예시입니다. ‘en-US’는 영어 (미국) 지역을, ‘de-DE’는 독일어 (독일) 지역을 나타냅니다. 각각의 지역에 맞는 통화 형식으로 변환이 가능하며, 위의 예시에서는 미국 달러가 미국 영어 형식과 독일어 형식으로 변환되었습니다.

결론

자바스크립트의 Intl API를 사용하여 지역화된 통화 변환은 간단하게 수행할 수 있습니다. Intl.NumberFormat 객체를 사용하여 숫자를 통화 형식으로 변환하고, 언어 및 지역 코드를 설정하여 원하는 형식으로 변환할 수 있습니다. 이를 활용하여 사용자들에게 더 나은 지역화 경험을 제공할 수 있습니다.

참고 자료