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

JavaScript Date.getUTCDay() 함수 – UTC 기준 요일 구하는 방법

JavaScript의 Date 객체는 언어에 기본으로 내장된 데이터 타입으로, new Date()를 호출하여 생성합니다.

Date 객체를 만들고 나면 다양한 메서드를 통해 연도, 월, 일, 시, 분, 초, 밀리초 필드를 읽거나 설정할 수 있습니다. 이때 대부분의 메서드는 지역 시간(local time) 또는 UTC(협정 세계시, GMT)를 기준으로 동작합니다.

getUTCDay() 메서드는 Date 객체가 가진 날짜가 무슨 요일인지 UTC 기준으로 숫자 형태로 반환합니다. 반환값은 일요일을 0으로 시작하여 토요일은 6으로 끝납니다.

반환값 정리

  • 0 – 일요일
  • 1 – 월요일
  • 2 – 화요일
  • 3 – 수요일
  • 4 – 목요일
  • 5 – 금요일
  • 6 – 토요일

문법

dateObj.getUTCDay();

예제 1: 특정 날짜의 요일 구하기

<html>
<head>
    <title>JavaScript Example</title>
</head>
<body>
    <script type="text/javascript">
        var dateObj = new Date('september 26, 89 12:4:25:96');
        document.write(dateObj.getUTCDay());
    </script>
</body>
</html>

출력

2

위 예제에서는 1989년 9월 26일(화요일)로 Date 객체를 생성했습니다. 일요일이 0이므로 화요일은 2에 해당하고, 따라서 이 함수는 2를 반환합니다.

예제 2: 날짜(일)를 생략한 경우

생성자에 월과 연도만 전달하고 일(day)을 지정하지 않으면, getUTCDay()는 해당 월의 1일로 간주하고 그 날짜의 요일을 UTC 기준으로 반환합니다.

<html>
<head>
    <title>JavaScript Example</title>
</head>
<body>
    <script type="text/javascript">
        var dateObj = new Date('September, 1989 00:4:00');
        document.write(dateObj.getUTCDay());
    </script>
</body>
</html>

출력

4

이 예제에서는 1989년 9월만 지정했으므로 날짜는 자동으로 9월 1일로 처리되며, 해당 날짜의 요일 값이 UTC 기준으로 계산되어 반환됩니다.

예제 3: 인수 없이 현재 날짜 사용하기

Date 객체를 생성할 때 생성자에 아무 값도 전달하지 않으면, getUTCDay()는 현재 날짜의 요일을 UTC 기준으로 반환합니다. 따라서 실행 시점에 따라 결과가 달라집니다.

<html>
<head>
    <title>JavaScript Example</title>
</head>
<body>
    <script type="text/javascript">
        var dateObj = new Date();
        document.write(dateObj.getUTCDay());
    </script>
</body>
</html>

출력

4

참고: getDay()와의 차이

getUTCDay()가 UTC(세계 표준시) 기준으로 요일을 계산하는 반면, getDay()는 브라우저나 시스템의 지역 시간대 기준으로 요일을 반환합니다. 두 메서드 모두 반환값 체계(0=일요일 ~ 6=토요일)는 동일하지만, 시간대에 따라 결과가 하루 차이로 달라질 수 있습니다. 국제화된 서비스를 개발할 때는 어느 시간 기준이 필요한지 명확히 구분하여 사용하는 것이 좋습니다.