Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

JavaScript로 이번 달 첫째 날과 마지막 날 구하는 방법

JavaScript로 이번 달 첫째 날과 마지막 날 구하기

JavaScript에서 현재 월의 첫 번째 날짜와 마지막 날짜를 구하는 것은 Date 객체만 있으면 매우 간단하게 처리할 수 있습니다. 핵심 원리는 다음과 같습니다.

  • 첫째 날: 일(day) 값을 1로 지정하면 해당 월의 첫 번째 날이 됩니다.
  • 마지막 날: 다음 달의 일(day) 값을 0으로 지정하면, JavaScript가 자동으로 이전 달의 마지막 날로 계산해 줍니다.

아래 예제 코드를 직접 실행해 보세요.

<html>
   <head>
      <title>JavaScript Dates</title>
   </head>
   <body>
      <script>
         var date = new Date();
         document.write("Current Date: " + date );
         var firstDay = new Date(date.getFullYear(), date.getMonth(), 1);
         document.write("<br>"+firstDay);
         var lastDay = new Date(date.getFullYear(), date.getMonth() + 1, 0);
         document.write("<br>"+lastDay);
      </script>
   </body>
</html>

코드 동작 원리

new Date()로 현재 날짜를 먼저 가져온 뒤, getFullYear()(연도)와 getMonth()(월) 값을 조합해 새로운 Date 객체를 생성합니다.

  • new Date(date.getFullYear(), date.getMonth(), 1) — 올해 현재 월의 1일을 나타내는 Date 객체를 반환합니다.
  • new Date(date.getFullYear(), date.getMonth() + 1, 0) — '다음 달의 0일', 즉 다음 달 1일의 하루 전을 의미하므로 결과적으로 이번 달의 마지막 날이 됩니다.

이 방식의 가장 큰 장점은 월별 일수를 직접 관리하지 않아도 된다는 점입니다. 예를 들어 2월처럼 윤년에 따라 마지막 날이 28일 또는 29일로 달라지는 경우에도, JavaScript가 달력 규칙을 자동으로 반영해 정확한 결과를 반환합니다.