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

JavaScript Date.UTC() 함수 완벽 정리 – 구문, 매개변수, 예제까지

Date 객체는 JavaScript 언어에 기본으로 내장된 데이터 타입입니다. Date 객체는 아래와 같이 new Date()를 통해 생성할 수 있습니다.

Date 객체가 한 번 생성되면 다양한 메서드를 사용해 객체를 조작할 수 있습니다. 대부분의 메서드는 현지 시간(local time) 또는 UTC(협정 세계시, GMT) 기준으로 연도, 월, 일, 시, 분, 초, 밀리초 필드를 가져오거나 설정하는 역할을 합니다.

Date.UTC() 함수는 날짜 관련 정보를 인자로 받아 이를 UTC 기준으로 해석하고, 1970년 1월 1일 00:00:00 UTC부터 해당 날짜까지 경과한 밀리초(ms) 값을 숫자로 반환합니다.

구문(Syntax)

Date.UTC() 함수의 구문은 다음과 같습니다.

Date.UTC(year, month[, day[, hour[, minute[, second[, millisecond]]]]]);

매개변수 설명

  • year: 연도를 나타내는 값입니다. 0~99 사이의 값은 1900년대(예: 89 → 1989년)로 해석되며, 그 외의 값은 그대로 연도로 처리됩니다.
  • month: 월을 나타내는 정수로, 0이 1월, 11이 12월입니다. (필수)
  • day: 일을 나타내는 정수 (1~31)
  • hour: 시를 나타내는 정수 (0~23)
  • minute: 분을 나타내는 정수 (0~59)
  • second: 초를 나타내는 정수 (0~59)
  • millisecond: 밀리초를 나타내는 정수 (0~999)

반환값

지정된 날짜까지 1970년 1월 1일 00:00:00 UTC로부터 경과된 시간을 밀리초 단위의 숫자(number)로 반환합니다.

예제 1: 특정 날짜를 UTC 문자열로 출력하기

<html>
<head>
    <title>JavaScript Example</title>
</head>
<body>
    <script type="text/javascript">
        var dateObj = new Date(Date.UTC(89, 8, 26, 3, 4, 5));
        var date = dateObj.toUTCString();
        document.write(date);
    </script>
</body>
</html>

위 예제에서 연도는 89(→ 1989년), 월은 8(0부터 시작하므로 → 9월)로 해석됩니다.

출력 결과

Tue, 26 Sep 1989 03:04:05 GMT

예제 2: 1970년부터 지정 날짜까지의 밀리초 구하기

<html>
<head>
    <title>JavaScript Example</title>
</head>
<body>
    <script type="text/javascript">
        var date = Date.UTC(2018, 10, 17);
        document.write("1970년부터 지정된 날짜까지의 밀리초: " + date);
    </script>
</body>
</html>

여기서 월 값 10은 11월을 의미합니다. 반환된 숫자는 에포크(epoch) 시간인 1970년 1월 1일부터 2018년 11월 17일까지의 총 밀리초입니다.

출력 결과

1970년부터 지정된 날짜까지의 밀리초: 1542412800000

정리

Date.UTC()는 Date 객체의 인스턴스 없이 호출 가능한 정적(static) 메서드라는 점에 유의하세요. 시간대 차이로 인한 오류를 방지하고 싶을 때, 서버 간 날짜 데이터를 일관되게 다루고 싶을 때 유용하게 활용할 수 있습니다.