Javascript/자바스크립트 문제
[Javascript : programmers] 날짜 비교하기 (Lv.0) 💥
isfp_yykkng
2024. 8. 9. 15:03
[Javascript : programmers] 날짜 비교하기 (Lv.0)
문제
나의 정답 풀이
function solution(date1, date2) {
const [y1, m1, d1] = date1
const [y2, m2, d2] = date2
if(y1!=y2) return y1<y2 ? 1:0
if(m1!=m2) return m1<m2 ? 1:0
if(d1!=d2) return d1<d2 ? 1:0
return 0
}
date1, date2의 년월일을 각각 y1, m1, d1, y2, m2, d2에 담고 년/월/일의 값이 다르다면 date2의 숫자가 더 크다면 1 아니면 0을 반환한다. 하지만 이 if문들을 모두 통과했다면 년/월/일이 모두 같은 경우이기 때문에 0을 반환한다.
* 하드코딩을 한 느낌이다...
다른 사람 풀이 1
const solution = (date1, date2) => new Date(date1) < new Date(date2) ? 1 : 0
Date() 함수를 이용하여 date1과 date2 에 있는 값들을 날짜로 반환하고 이를 비교하여 date1이 이른 날짜라면 1을, 아니면 0을 반환한다. ( "궁 딸깍" 느낌...)
다른 사람 풀이 2
function solution(date1, date2) {
return parseInt(date1.join("")) >= parseInt(date2.join("")) ? 0 : 1;
}
date1과 date2를 모두 정수로 합치고 date1 정수가 더 크거나 같으면 1을 아니면 0을 반환한다.