MiServe DevTools

내 스티커

도구를 여기에 고정하세요. 이 브라우저에 저장됩니다.

날짜 계산기

두 날짜 사이의 기간을 세거나, 날짜에 년, 월, 주, 일을 더하고 뺍니다.

시작
종료

년, 월, 일
총 일수
주와 일
총 시간
영업일(월요일~금요일)
시작 날짜
종료 날짜

브라우저에서 실행됩니다. 붙여 넣은 내용은 업로드되지 않습니다.

이 도구에 대하여

차이를 세는 방법

총 일수는 시작부터 종료까지의 정확한 일수입니다. 종료 날짜 자체는 세지 않으므로 같은 주의 월요일부터 금요일까지는 4일입니다. 년, 월, 일은 같은 기간을 달력 단위로 나타냅니다. 두 날짜 사이에 들어가는 온전한 개월 수를 최대한 먼저 구하고, 남은 일수를 덧붙입니다.

영업일은 그 범위에 있는 월요일부터 금요일까지를 세며, 여기서도 종료 날짜는 포함하지 않습니다. 공휴일은 나라와 지역마다 다르므로 빼지 않습니다.

월말 규칙

달마다 길이가 다르므로, 한 달을 더할 때는 도달한 달에 없는 날짜를 처리할 규칙이 필요합니다. 이 도구는 가능하면 같은 날짜를 유지하고, 그렇지 않으면 그 달의 마지막 날에서 멈춥니다. 1월 31일에 한 달을 더하면 2월 28일이 되고, 윤년에는 2월 29일이 됩니다. 이 규칙이 적용되면 페이지에 항상 표시됩니다.

그 결과 월 단위 계산은 항상 되돌릴 수 있는 것은 아닙니다. 1월 31일에 한 달을 더하면 2월 28일이지만, 2월 28일에서 한 달을 빼면 1월 28일입니다. 같은 이유로 계산 순서도 중요합니다. 년과 월을 먼저 한 단계로 적용하고, 그다음에 주와 일을 더합니다.

4로 나누어떨어지는 해는 윤년이지만, 100으로 나누어떨어지는 해는 400으로도 나누어떨어져야 윤년입니다. 그래서 2000년에는 2월 29일이 있었고 1900년에는 없었습니다.

로컬 시계가 아닌 달력 날짜로 계산

로컬 기준 하루가 항상 24시간인 것은 아닙니다. 서머타임으로 시계가 바뀌는 날은 보통 23시간이나 25시간이어서, 로컬 타임스탬프 두 개를 빼고 24시간으로 나누는 계산은 하루가 모자라게 나올 수 있습니다. 이 도구는 모든 계산을 UTC 달력 날짜로 하며, JavaScript는 이를 하루 정확히 24시간으로 세므로 시계 변경이 결과에 영향을 주지 않습니다. 입력한 시간은 시간대 없는 단순한 시계 값으로 취급합니다.

주차는 ISO 8601을 따릅니다. 한 주는 월요일에 시작하고, 1주차는 그해의 첫 번째 목요일이 들어 있는 주입니다. 그래서 1월 초의 며칠은 전년도의 마지막 주에 속할 수 있습니다. 예를 들어 2027년 1월 1일은 2026년 53주차입니다.

자주 묻는 질문

일수에 종료 날짜도 포함되나요?

아니요. 시작 날짜부터 종료 날짜 직전까지 세므로, 3월 1일부터 3월 2일까지는 1일입니다. 두 날짜를 모두 세야 한다면 총 일수에 1을 더하세요.

1월 31일의 한 달 뒤가 왜 2월 28일인가요?

2월에는 31일이 없으므로 결과가 그 달의 마지막 날에서 멈춥니다. 윤년에는 2월 29일입니다. PostgreSQL, MySQL, Java의 java.time도 도달한 달에 해당 날짜가 없으면 같은 규칙을 적용합니다.

영업일에서 공휴일도 빠지나요?

아니요. 영업일은 범위 안의 월요일부터 금요일까지입니다. 공휴일은 나라, 지역, 연도에 따라 다르므로 해당하는 날은 직접 빼세요.

입력한 날짜가 어딘가로 전송되나요?

아니요. 계산은 브라우저 탭의 JavaScript가 처리하며, 날짜는 저장되지 않습니다. 두 계산 방식 중 어느 쪽을 선택했는지만 이 브라우저에 기억됩니다.

시간의 다른 도구