날짜 비교하기

정수 배열 date1과 date2가 주어집니다. 두 배열은 각각 날짜를 나타내며 year, month, day 꼴로 주어집니다. 각 배열에서 year는 연도를, month는 월을, day는 날짜를 나타냅니다.

만약 date1이 date2보다 앞서는 날짜라면 1을, 아니면 0을 return 하는 solution 함수를 완성해 주세요.

날짜 비교하기Lv.0

181835

https://school.programmers.co.kr/learn/courses/30/lessons/181838?language=javascript

해설

주어진 두 날짜 date1과 date2가 각각 배열 형태로 입력되며, 이 배열은 [연도, 월, 일]의 형식을 따릅니다. 함수의 목적은 date1이 date2보다 이전 날짜인지 확인하는 것입니다.

  • Name
    날짜 객체 생성
    Type
    Description
    • let d1 = new Date(date1[0], date1[1] - 1, date1[2]);

      • date1 배열의 요소를 사용하여 Date 객체 d1을 생성합니다. Date 객체는 연도, 월, 일을 매개변수로 받습니다.
      • 월(month)은 0부터 시작하므로 date1[1] - 1을 사용하여 입력된 월을 0-11 범위의 값으로 조정합니다.
    • let d2 = new Date(date2[0], date2[1] - 1, date2[2]);

      • 위와 같은 방식으로 date2 배열의 요소를 사용하여 두 번째 Date 객체 d2를 생성합니다.
  • Name
    날짜 비교
    Type
    Description
    • if (d1 < d2)
      • d1이 d2보다 이전 날짜인 경우, 즉 d1이 d2보다 작은 경우 true를 반환합니다.
    • else
      • d1이 d2보다 이후 날짜인 경우, 즉 d1이 d2보다 큰 경우 false를 반환합니다.

두 날짜를 비교하여 첫 번째 날짜가 두 번째 날짜보다 이전인지 여부를 판단하는 데 사용할 수 있습니다. 날짜 비교는 JavaScript의 Date 객체와 연산자를 활용하여 수행됩니다.

날짜 비교하기

function solution(date1, date) {
  let d1 = new Date(date1[0], date1[1] - 1, date1[2]);
  let d2 = new Date(date2[0], date2[1] - 1, date2[2]);

  if (d1 < d2) {
    return 1;
  } else {
    return 0;
  }
}