Intl.DateTimeFormat을 사용하여 날짜 및 시간 형식 변경하기

JavaScript에서 날짜 및 시간 형식을 적절하게 표시하려면 Intl.DateTimeFormat 객체를 사용할 수 있습니다. 이 객체는 현지화된 날짜 및 시간 형식을 지원하여 사용자의 지역에 맞게 표시할 수 있도록 도와줍니다. 이 기능을 사용하면 사용자가 원하는 언어로 날짜 및 시간을 표시할 수 있으며, 표현 방식도 다양하게 설정할 수 있습니다.

Intl.DateTimeFormat 기본 사용법

const dt = new Date();
const options = {
  year: 'numeric',
  month: 'long',
  day: 'numeric',
  hour: 'numeric',
  minute: 'numeric',
  second: 'numeric',
  hour12: false
};

const formatter = new Intl.DateTimeFormat('ko-KR', options);
const formattedDate = formatter.format(dt);
console.log(formattedDate);

위의 예제는 한국어로 현재 날짜와 시간을 표시하는 방법을 보여줍니다. Intl.DateTimeFormat 생성자의 첫 번째 매개변수로 언어 태그를 전달하면 해당 언어로 형식이 적용됩니다. 위의 예제에서는 ‘ko-KR’을 사용하여 한국어로 형식을 설정했습니다.

두 번째 매개변수는 형식을 지정하는 옵션 객체입니다. year, month, day, hour, minute, second, hour12 등 여러 옵션을 사용하여 원하는 형식을 설정할 수 있습니다. 위의 예제에서는 연도, 월, 일, 시간, 분, 초를 모두 표시하고, 시간은 24시간 형식으로 설정했습니다.

다른 언어 및 지역 설정하기

언어 및 지역에 따라 다른 형식으로 날짜 및 시간을 표시하려면 Intl.DateTimeFormat 생성자의 첫 번째 매개변수를 변경하면 됩니다. 예를 들어, 영어로 표시하고자 한다면 ‘en-US’를 사용하고, 일본어로 표시하고자 한다면 ‘ja-JP’ 등을 사용하면 됩니다.

지역 설정 외에도 원하는 형식을 세밀하게 설정할 수 있습니다. 예를 들어, ‘mm/dd/yyyy’ 형식으로 날짜를 표시하고 싶다면 options 객체에서 year을 ‘numeric’, month를 ‘2-digit’, day를 ‘2-digit’으로 설정하면 됩니다.

const dt = new Date();
const options = {
  year: 'numeric',
  month: '2-digit',
  day: '2-digit'
};

const formatter = new Intl.DateTimeFormat('en-US', options);
const formattedDate = formatter.format(dt);
console.log(formattedDate);

위의 예제는 영어로 날짜를 ‘mm/dd/yyyy’ 형식으로 표시하는 방법을 보여줍니다.

참고 자료

\n\n #JavaScript #DateTimeFormat