Daily coding
[프로그래머스] Lv.1 2016년
mellomello.made
2022. 7. 11. 20:12
[프로그래머스] Lv.1 2016년
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일같은 날짜는 주어지지 않습니다)
입출력 예
| a | b | result |
| 5 |24 | "TUE" |

function solution(a, b) {
return new Date(2016, a - 1, b).toString().slice(0, 3).toUpperCase();
}
// 2016년 1월 1일 = new Date(2016, 0 , 1)
🔖 new Date(year,month[, day, hour, minute, second, millisecond])
Date 생성자 함수에 연, 월, 일, 시, 분, 초, 밀리초를 의미하는 숫자를 인수로 전달하면 지정된 날짜와 시간을 나타내는 Date객체를 반환한다. 이때 연, 월은 반드시 지정해야한다. 지정하지 않은 옵션 정보는 0 또는 1로 초기화된다. 인수는 다음과 같다. 연, 월을 지정하지 않은 경우 1970년 1월 일 00:00:00(UTC)을 나타내는 Date 객체를 반환한다.
인수 | 내용 |
year | 연을 나타내는 1900년 이후의 정수. 0부터 99는 1900부터 1999로 처리된다. |
month | 월을 나타내는 0 ~ 11까지의 정수 (주의: 0부터 시작. 0 = 1월) |
day | 일을 나타내는 1 ~ 31까지의 정수 |
hour | 시를 나타내는 0 ~ 23까지의 정수 |
minute | 분을 나타내는 0 ~ 59까지의 정수 |
second | 초를 나타내는 0 ~ 59까지의 정수 |
millisecond | 밀리초를 나타내는 0 ~ 999까지의 정수 |
month 는 0~11
🔖 toString
toString 메서드는 숫자를 문자열로 변환하여 반환한다. 진법을 나타내는 2~36 사이의 정수값을 인수로 전달할 수 있다
인수를 생략하면 기본값 10진법이 지정된다.
🔖 slice()
slice() 메소드는 문자열의 일부를 추출하면서 새로운 문자열을 반환한다.
//문자열.slice(잘라올 첫 위치값, 잘라올 마지막 위치값)
str.slice(beginIndex[, endIndex])