날짜 간격 계산기

두 날짜만 입력하면 그 사이의 일수·주수·개월수·연수를 달력 기준으로 정확하게 계산해 주는 도구입니다. 이벤트까지 남은 날짜 계산, 경과일 확인, 프로젝트 기간 계산 등에 사용할 수 있습니다.

날짜 간격 계산 Tips

  • 다가오는 이벤트 날짜를 "종료일"에 입력하면 그 이벤트까지 정확히 며칠 남았는지 확인할 수 있습니다. "오늘 입력" 버튼으로 종료일에 오늘 날짜를 바로 채울 수 있습니다.
  • "년・개월・일"의 내역은 달력 기준으로 정확하게 계산됩니다. 예를 들어 1월 15일부터 3월 20일까지는 단순히 일수를 30으로 나눈 값이 아니라 "2개월 5일"로 정확히 표시됩니다.
  • 계약이나 프로젝트 기간을 계산할 때는 시작일을 계약 체결일로, 종료일을 납품 기한일로 설정하면 남은 기간과 총 일수를 한눈에 확인할 수 있습니다.
  • 윤년(2월 29일 포함)을 포함하는 기간도 자동으로 정확하게 계산되므로, 윤년 여부를 수작업으로 다시 확인할 필요가 없습니다.
  • 실수로 종료일을 시작일보다 앞선 날짜로 지정해도, 도구가 자동으로 두 날짜를 바꿔 계산하고 그 사실을 안내해 주므로 직접 수정할 필요가 없습니다.

자주 묻는 질문

나이 계산 도구는 생년월일로부터 현재 나이를 구하는 데 특화된 도구입니다. 본 도구는 시작일과 종료일을 자유롭게 지정할 수 있는 범용 날짜 간격 계산 도구로, 생일 이외의 임의의 기간(이벤트까지 남은 일수, 프로젝트 기간 등)을 계산할 수 있습니다.

시간 계산 도구는 "하루 안"의 시·분·초 덧셈뺄셈(예: 9:30에 2시간 15분을 더하기)을 다루지만, 본 도구는 달력 상의 "날짜와 날짜" 사이의 간격(년・월・주・일 단위)을 다룹니다. 하루 미만의 시간 계산이 필요한 경우 시간 계산 도구를 이용해 주세요.

오류가 발생하지 않습니다. 내부적으로 자동으로 두 날짜를 바꿔 절댓값으로 간격을 계산하고, "날짜를 바꿔서 계산했습니다"라는 안내를 표시합니다. 어느 날짜가 더 이른지 헷갈리는 경우에도 안심하고 사용할 수 있습니다.

네. JavaScript의 날짜 연산 기능 덕분에 2월 29일을 포함하는 기간도 일수・개월수・연수가 정확하게 산출됩니다. 윤년 여부를 수작업으로 확인할 필요가 없습니다.

단순히 총 일수를 30으로 나누는 것이 아니라, 연→월→일 순서로 달력상의 자릿수를 뺄셈하고, 일수가 부족한 경우 종료월의 전월 마지막 날을 빌려오는 방식으로 계산합니다. 이를 통해 월마다 다른 일수 차이를 고려한 정확한 내역을 얻을 수 있습니다.
ツールくん

여담 ― 손으로 날짜를 계산할 때 흔히 저지르는 실수

두 날짜 사이의 간격을 손으로 어림잡을 때, 많은 사람이 한 달을 단순히 30일로 어림잡습니다. 하지만 실제 한 달의 일수는 28일에서 31일까지 다양하므로, 1월 15일부터 3월 20일까지를 "64일 ÷ 30 ≒ 2.1개월"로 어림잡는 것과 달력 기준으로 정확히 "2개월 5일"로 세는 것 사이에는 차이가 생길 수 있습니다. 이 차이는 계약 기한이나 청구서 만기일을 판단할 때 중요한 문제가 될 수 있습니다. 본 도구는 Date 객체의 연·월·일 필드를 직접 비교하는 방식을 사용하므로, 항상 달력에 맞는 정확한 내역을 반환합니다.

윤년의 판정 규칙은 단순히 "4년마다"가 아닙니다. 그레고리력의 윤년 규칙에 따르면 서기 연도가 4로 나누어떨어지는 해는 윤년이지만, 100으로 나누어떨어지는 해는 평년으로 돌아가고, 다시 400으로 나누어떨어지는 해는 윤년이 되는 예외 규정이 있습니다. 2000년은 윤년이었지만 1900년과 2100년은 평년입니다. 이 규칙은 JavaScript의 표준 날짜 처리 방식에도 내장되어 있으며, 본 도구도 이 동작을 그대로 활용합니다.

"경과일수"를 세는 방법에는 두 가지 방식이 있습니다. 예를 들어 "1월 1일부터 1월 10일까지 며칠?"이라는 질문에 대해, 양 끝을 모두 포함해 "10일간"으로 세는 방식과 차이만 보는 "9일"로 세는 방식이 있습니다. 본 도구는 후자(단순한 일수 차이)를 채택하고 있으므로, 시작일을 1일째로 세고 싶은 경우 표시된 일수에 1을 더해야 한다는 점에 주의하세요.

→ 모든 여담 보기