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’ 형식으로 표시하는 방법을 보여줍니다.
참고 자료
- Intl.DateTimeFormat - MDN Web Docs
- 기본 날짜 및 시간 형식 - Unicode CLDR
-
[Date - JavaScript MDN](https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Date)
\n\n #JavaScript #DateTimeFormat