Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

JavaScript toLocaleString() 메서드로 현재 로케일 규칙에 맞게 날짜를 문자열로 변환하는 방법

JavaScript의 toLocaleString() 메서드는 Date 객체를 운영체제의 로컬 규칙(로케일)에 따라 문자열로 변환해 줍니다.

toLocaleString() 메서드는 스크립트가 실행되는 환경, 즉 운영체제에 설정된 날짜 형식 규칙에 의존하여 동작합니다. 예를 들어 미국에서는 월이 일보다 앞에 표시되어 '04/15/98'처럼 나타나지만, 독일에서는 일이 월보다 앞에 표시되어 '15.04.98'처럼 나타납니다. 한국에서는 일반적으로 '2018. 1. 15. 오후 2:39:07'과 같은 형식으로 출력됩니다.

예제

아래 코드를 실행하면 현재 로케일의 규칙에 따라 날짜가 문자열로 변환되는 결과를 직접 확인할 수 있습니다.

<html>
   <head>
      <title>JavaScript toLocaleString Method</title>
   </head>

   <body>
      <script>
         var dt = new Date(2018, 0, 15, 14, 39, 7);
         document.write( "Formated Date : " + dt.toLocaleString() );
      </script>
   </body>
</html>

참고: 로케일 및 출력 형식 직접 지정하기

toLocaleString()은 인수를 전달하지 않으면 시스템 기본 로케일을 사용하지만, 첫 번째 인수로 로케일 코드를, 두 번째 인수로 옵션 객체를 전달하면 원하는 언어와 형식을 명시적으로 지정할 수도 있습니다.

var dt = new Date(2018, 0, 15, 14, 39, 7);
// 한국어 로케일로 변환
console.log(dt.toLocaleString('ko-KR')); // 2018. 1. 15. 오후 2:39:07
// 미국 영어 로케일로 변환
console.log(dt.toLocaleString('en-US')); // 1/15/2018, 2:39:07 PM

또한 최신 JavaScript 환경에서는 국제화 API인 Intl.DateTimeFormat 객체를 사용하면 더욱 세밀하고 일관된 날짜 형식 처리가 가능하므로, 다양한 로케일을 지원하는 서비스에는 이 방법을 함께 고려해 보는 것이 좋습니다.