근무일 계산기
날짜 범위 내 실제 근무일수 계산
근무일 계산
근무일 계산기는 무엇인가요?
근무일 계산기는 지정한 기간에서 주말과 입력한 공휴일 수를 제외해 실제로 사용할 수 있는 근무일을 세는 도구입니다. 납기 산정, 휴가 일수 확인, 급여 계산, 청구 주기, 채용 일정, 프로젝트 계획처럼 전체 달력 일수만으로는 부족한 경우에 유용합니다. 근무일은 자연일과 다릅니다. 토요일/일요일 주말, 금요일/토요일 주말, 지역 공휴일, 회사 휴무일, 대체 근무일, 반차 규칙에 따라 결과가 달라질 수 있습니다. 이 도구는 사용자가 선택한 주말 패턴과 공휴일 수를 바탕으로 빠른 계획용 결과를 제공합니다. 인사, 계약, 법적 용도로는 공식 달력과 회사 규정을 다시 확인해야 합니다.
사용 방법
사용 방법
- 시작일과 종료일을 입력하세요
- 주말 제외 옵션을 선택하세요 (토-일 / 금-토 / 없음)
- 공휴일 수를 입력하세요 (선택 사항)
- '근무일 계산'을 클릭하여 결과를 확인하세요
캘린더 가정
- 계산 전에 주말 규칙을 설정하세요. 금-토, 토-일, 주말이 없는 캘린더는 서로 다른 결과가 나옵니다.
- 공휴일과 회사 휴무일을 제외하려면 별도로 입력해야 합니다.
활용 사례
기술 원리
근무일 수는 포함 범위 `[start, end]` 내에서 주말도 공휴일도 아닌 달력 일수입니다. 양쪽 경계가 UTC 자정으로 정규화된 경우 표준 포함 끝점 공식은 `total_days = (end - start) / 86_400_000 + 1`이며, 여기서 주말과 공휴일을 뺍니다. 요일은 `Date.prototype.getDay()`에서 가져오며, 일요일은 `0`, 토요일은 `6`을 반환합니다. 주의할 점은 `getDay()`는 `getDate()`가 아니며, 결과는 브라우저의 로컬 시간대 기준이므로 UTC 날짜 문자열이 자정을 넘으면 예상과 다른 요일에 위치할 수 있습니다.
주말 패턴은 지역에 따라 다릅니다: 글로벌 기본값은 토요일-일요일(서양, 인도, 아시아 대부분)이지만, 중동은 역사적으로 목요일-금요일을 사용했고 2024년 기준 대부분의 걸프 국가(UAE, 바레인, 쿠웨이트, 카타르)는 금요일-토요일 또는 금요일 반나절이 포함된 토요일-일요일로 맞추었습니다. 이란, 아프가니스탄, 남아시아 일부는 여전히 금요일만 휴무이며, 이스라엘은 금요일-토요일입니다. 이 도구는 토-일, 금-토, 없음 세 가지 일반 프리셋을 제공하며, 공휴일 수가 나머지를 뺄셈으로 커버합니다.
계산 알고리즘 자체에는 두 가지 실용적 구현이 있습니다. 단순 반복은 하루씩 걷습니다: `for (let d = start; d <= end; d.setDate(d.getDate()+1)) if (![0,6].includes(d.getDay())) count++`. 이는 달력 일수에 대해 O(n)이며 읽기 쉽습니다. 폐쇄형 대안은 `full_weeks * 5 + partial_week_workdays`를 계산하여 O(1)로 실행되며, 이는 여러 해에 걸친 범위에서 중요합니다. 주말에 떨어지는 공휴일은 이중으로 빼면 안 되므로, 정규 패턴은 `holidays.filter(h => !isWeekend(h)).length`로 공휴일 집합을 필터링합니다. 중국의 调休(보충 근무일) 정책은 순수 주말 패턴 로직으로는 표현할 수 없는 추가 사항이 있습니다: 국무원이 매년 특정 토요일이나 일요일을 근무일로 전환하여 연장된 춘절 또는 국경일 휴가를 보상하는 목록을 발표하므로, 중국 달력의 경우 공휴일 목록과 명시적인 보충 근무일 목록을 쌍으로 구성해야 하며 요일 규칙에만 의존할 수 없습니다.
- 포함 범위 공식: `total_days = (end - start) / 86_400_000 + 1`, DST 이동을 방지하기 위해 두 날짜를 UTC 자정으로 정규화합니다.
- `Date.prototype.getDay()`는 브라우저의 로컬 시간대에서 0(일)~6(토)을 반환합니다 — UTC가 아니므로, 시간대에 민감한 코드는 `getUTCDay()`를 사용해야 합니다.
- 주말 프리셋: 토-일(서양, 인도, 아시아 대부분), 금-토(2006~2013년 이후 대부분의 걸프 국가), 금만(이란), 없음(24시간 운영).
- O(1) 폐쇄형: `full_weeks * 5 + extra_workdays_in_partial_week`; 다년 범위에서는 일별 반복보다 선호됩니다.
- 주말에 떨어지는 공휴일은 이중 계수하면 안 됩니다: 원시 공휴일 수가 아닌 `holidays.filter(h => !isWeekend(h)).length`를 뺍니다.
- 중국 국무원 调休: 특정 토요일/일요일이 연장 휴가를 보상하기 위해 법정 근무일이 됩니다; 명시적인 보충 근무일 목록이 필요합니다.
- 미국 연방 공휴일(5 U.S.C. § 6103 기준)은 달력 연도당 평균 11일을 차지합니다: 신정, 마틴 루터 킹 데이, 대통령의 날, 메모리얼 데이, 준틴스, 독립기념일, 노동절, 콜럼버스의 날, 참전용사의 날, 추수감사절, 크리스마스.
예시
2026년 한 해 평일 수
시작일: 2026-01-01
종료일: 2026-12-31
주말: 토요일 & 일요일
공휴일: 13 (중국 법정 공휴일, 调休 조정 후 기준)
전체 일수: 365
주말 일수: 104
공휴일: 13
평일: 2482주 스프린트 작업 가능량
시작일: 2026-06-15 (월요일)
종료일: 2026-06-26 (금요일)
주말: 토요일 & 일요일
공휴일: 0
전체 일수: 12
주말 일수: 2
평일: 10 (2주 스프린트 풀 가동, 개발자 4명 => 40 인일 가동량)금-토 주말을 사용하는 중동 팀
시작일: 2026-09-01
종료일: 2026-09-30
주말: 금요일 & 토요일
공휴일: 1 (지역 공휴일)
전체 일수: 30
주말 일수: 8 (9월의 금 + 토)
평일: 21공휴일 이후 온보딩 기간
시작일: 2026-10-08 (국경절 연휴 이후 첫 평일)
종료일: 2026-10-30
주말: 토요일 & 일요일
공휴일: 0
전체 일수: 23
주말 일수: 6
평일: 17 (3주 온보딩 계획에 충분한 시간)미국 연방 공휴일 기준 2027 1분기 계획
시작일: 2027-01-01
종료일: 2027-03-31
주말: 토요일 & 일요일
공휴일: 4 (New Year, MLK Day, Presidents Day, Good Friday)
전체 일수: 90
주말 일수: 26
평일: 60자주 묻는 질문
근무일은 어떻게 계산되나요?
기본적으로 월~금요일을 근무일로 보고 토·일요일은 제외합니다. 휴일 목록에 입력한 공휴일도 함께 제외됩니다. 페이지에는 전체 달력일, 주말 일수, 휴일 일수, 그리고 최종 근무일 수가 표시됩니다.
공휴일이 자동으로 적용되나요?
아니요. 본 계산기는 공휴일을 자동으로 불러오지 않습니다. 휴일 일수를 직접 입력해야 합니다. 정확한 일수는 해당 국가의 공식 달력을 확인하세요.
대체 근무일(중국의 调休 등)도 처리하나요?
아니요. 본 계산기는 주말과 입력한 휴일 일수만 제외합니다. 중국의 调休(대체 근무) 같은 정책은 자동 처리하지 않으므로, 일정에 대체 근무일이 포함된다면 주말 규칙이나 휴일 일수를 직접 조정하세요.
주말만 제외하고 휴일은 빼지 않을 수 있나요?
네. 휴일 목록을 끄면 토·일요일만 제외하고 계산합니다. 또한 주말로 처리할 요일을 직접 지정할 수도 있어, 금~토를 주말로 쓰는 일부 중동 일정에도 대응할 수 있습니다.
이 도구와 날짜 차이 도구는 어떻게 다른가요?
날짜 차이 도구는 달력일 수를 반환하고, 이 도구는 주말과 휴일을 뺀 근무일 수를 반환합니다. 프로젝트 마감, 계약 일자, SLA 기간에는 이 도구를, 단순 경과 시간에는 날짜 차이 도구를 사용하세요.
과거 날짜에도 사용할 수 있나요?
네. 과거든 미래든 두 날짜 사이의 근무일을 계산할 수 있습니다. 시작일과 종료일을 입력하고 주말 규칙과 휴일 일수를 지정하면 해당 기간의 총 근무일이 계산됩니다.
내 데이터가 업로드되나요?
아니요. 계산은 브라우저에서 이루어집니다. 휴일 일수와 날짜는 저장되거나 전송되지 않습니다.
관련 도구
수명 계산기
온라인 수명 계산기로 생년월일과 기대수명을 기반으로 이미 보낸 생명의 백분율을 계산하여 인생 진행률을 직관적으로 보여줍니다.
나이 계산기
온라인 나이 계산 도구. 생년월일로 정확한 나이, 띠, 총 일수, 다음 생일까지의 일수를 계산합니다.
날짜 차이 계산기
온라인 날짜 차이 계산 도구. 두 날짜 간의 일수, 주수, 월수, 연수를 계산합니다. 시간/분/초 표시로 정확한 계산.
수능 카운트다운 도구
수능 카운트다운 도구로 수능까지 남은 일, 시간, 분, 초를 실시간 계산합니다. 수능 연도를 자동 인식하고 향후 100년을 지원합니다.
유통기한 계산기
온라인 유통기한 계산기. 생산일과 보관기간에서 유통기한을 계산, 또는 유통기한에서 생산일을 추정. 일괄 계산, 남은 일수 알림 표시.
수면 계산기
온라인 수면 계산기로 기상 또는 취침 시간을 기반으로 최적의 수면 시간을 계산하며 90분 수면 주기를 기반으로 과학적인 추천을 제공합니다.
