JavaScript에서 특정 날짜의 요일을 알아내려면 getDay() 메서드를 사용하면 됩니다. Date 객체의 getDay() 메서드는 지정된 날짜의 요일을 현지 시간(local time) 기준으로 반환합니다.
getDay() 메서드의 반환값
getDay()가 반환하는 값은 요일에 해당하는 정수입니다. 각 숫자와 요일의 매핑은 다음과 같습니다.
- 0 – 일요일(Sunday)
- 1 – 월요일(Monday)
- 2 – 화요일(Tuesday)
- 3 – 수요일(Wednesday)
- 4 – 목요일(Thursday)
- 5 – 금요일(Friday)
- 6 – 토요일(Saturday)
즉, 일요일이 0부터 시작하여 토요일이 6으로 끝나는 구조입니다. 참고로 이 메서드는 요일 이름 자체가 아닌 숫자를 반환하기 때문에, 실제 서비스에서는 배열 등을 활용해 한글 또는 영문 요일 이름으로 변환하는 것이 일반적입니다.
예제 코드
다음 코드를 실행하면 JavaScript에서 요일을 확인할 수 있습니다.
<html>
<head>
<title>JavaScript getDay Method</title>
</head>
<body>
<script>
var dt = new Date("December 25, 1995 23:15:00");
document.write("요일 숫자: " + dt.getDay());
</script>
</body>
</html>실행 결과
요일 숫자: 1
1995년 12월 25일은 월요일이었기 때문에 getDay()는 1을 반환합니다.
응용: 요일 이름으로 출력하기
반환된 숫자를 사람이 읽기 쉬운 요일 이름으로 바꾸려면 다음과 같이 배열을 활용할 수 있습니다.
var days = ["일", "월", "화", "수", "목", "금", "토"];
var dt = new Date("December 25, 1995 23:15:00");
document.write("요일: " + days[dt.getDay()] + "요일");요일: 월요일
이처럼 getDay() 메서드와 배열을 조합하면 원하는 형태의 요일 정보를 손쉽게 표시할 수 있습니다.