工作日计算器
这个工具统计你输入的日期范围内有多少个工作日。这里的工作日指周一到周五:程序自动跳过周六和周日,再按你输入的节假日数量扣除落在工作日上的法定假期,得到调整后的工作日天数。结果可用于估算交付周期、合同通知期、工资核算截止日和迭代排期等按工作日而不是自然日计算的期限。页面不查询任何国家的官方节假日日历、不安排日程、也不发送提醒。
计算方法和公式
程序逐日遍历从开始日期到结束日期的每一个自然日,统计星期一至星期五的天数:
工作日天数 = [开始日期 … 结束日期] 内星期一至星期五的天数
两端日期都计入。其余输出由下面关系直接得出:
总天数 = (结束日期 − 开始日期) + 1
周末天数 = 总天数 − 工作日天数
调整后工作日 = max(0, 工作日天数 − 节假日数)
节假日一栏填写落在范围内、且本身是周一至周五的法定节假日个数。如果结束日期早于开始日期,程序按同一时间跨度反向统计,结果仍为正数。
计算示例
范围取 2026-09-01(周二)至 2026-09-30(周三),期间有 1 个节假日:
- 总天数:30
- 周末天数:8(四个周六和四个周日)
- 工作日天数:30 − 8 = 22
- 调整后工作日:22 − 1 = 21
再取 2026-03-06(周五)至 2026-03-09(周一):共 4 个自然日,其中周五和周一两个是工作日。
结果怎么理解
"工作日天数"是范围内周一至周五的原始计数,落在工作日上的两端日期都包含在内。"调整后工作日"在此基础上减去你填写的节假日数,且不会小于零。这些结果只描述日历本身:它们不预测任务实际耗时,也不判定具体哪些日期是节假日。
不同机构对工作日的约定并不相同:有的单位把周六算作工作日,有的地区周末是周五加周六,节假日安排更是因国家而异。如果你的规则不同,请把调整结果当作起点再手工修正。
准确性和适用范围
- 输入必须是有效的公历日期。程序按设备本地时区解析日期,只统计整天,忽略小时和分钟。
- 工具不内置节假日数据库。节假日一栏只是数量,无法替你跳过"哪一天是哪个节日"。
- 本版本的周末固定为周六和周日,不支持周二至周六或周日至周四等其他双休排班。
- 法律、劳动法规和服务水平协议对工作日和通知期常有精确定义。涉及法律或合规期限时,请先确认适用规则中的计算口径,再决定是否依赖本结果。
资料来源
- ISO 8601 日期和时间表示法,本工具采用的公历与星期约定。
- NIST 特别出版物 811,用于核对输出中数量和计数的表达方法。
编辑记录
- 作者为 SoupCalc 编辑团队
- 方法复核由 SoupCalc 工程审查完成
- 最后复核日期为 2026 年 9 月 2 日
- 复核范围包括工作日统计逻辑、节假日调整、示例、来源链接和页面实际功能