본문 바로가기
💻JavaScript/코딩테스트

2016년(Twenty Sixteen)

by 영진학생 2025. 1. 19.

문제 설명

 

2016년 1월 1일은 금요일입니다. 2016년 a월 b일은 무슨 요일일까요? 두 수 a ,b를 입력받아 2016년 a월 b일이 무슨 요일인지 리턴하는 함수, solution을 완성하세요.

요일의 이름은 일요일부터 토요일까지 각각 SUN,MON,TUE,WED,THU,FRI,SAT 입니다.

예를 들어 a=5, b=24라면 5월 24일은 화요일이므로 문자열 "TUE"를 반환하세요.

 

 

제한 조건

 

  • 2016년은 윤년입니다.
  • 2016년 a월 b일은 실제로 있는 날입니다. (13월 26일이나 2월 45일같은 날짜는 주어지지 않습니다)

 

 

📄 문제

function solution(a, b) {
    var answer = '';
    return answer;
}

 

 

💻 내가 쓴 코드

function solution(month, day) {
    const year = 2016;
    const date = new Date(year, month - 1, day);
    console.log(date); // 2016-05-23T15:00:00.000Z
    console.log(date.getDay()); // 2
    const daysOfTheWeek = ["SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT"];
    
    return daysOfTheWeek[date.getDay()];
}

 

 

📚 배운 점

  • new Date(year, month - 1, day) 메서드는 입력한 날짜를 생성하고 파라미터가 없으면 현재 시간과 날짜를 생성한다.
  • getDay() 메서드는 요일을 숫자로 바꾸는 메서드로 Sunday -> 0 ~ Saturday -> 6 으로 변환시킨다.