工作日计算器
两个模式:统计两个日期之间的总天数、常规工作日、周末与法定假日(支持录入调休上班日,贴合国内放假安排);从某天起往后数 N 个工作日,自动跳过周末与假日、计入补班,算交付日期、审批时限都适用。
算交付日期、审批时限、项目工期,要跳过的不只是周末——国内还有法定假日与调休补班:周六可能要上班,周三可能是假期。本工具内置 2024—2026 年放假安排,两个模式:统计两日期间的总天数、常规工作日与实际工作日(计入调休);从某天起数 N 个工作日得目标日期。
与日期计算器的分工:那边的工作日数只排除周末(通用口径),本工具按国内放假安排逐日判断(休 / 班角标来自官方通知),算国内工期、政府审批时限用这边才准。数工作日时起始当天算不算第 1 天,两种口径都支持,按你的制度选。
- —
- —
- —
- —
这个工具解决你的问题了吗?
提交后会把工具名、你的输入与当前结果发送到服务器;请勿填写身份证号、手机号等隐私信息。
AI 助手 会结合你当前的输入与结果回答
追问会再次把当前输入与结果发送到服务器;请勿填写隐私信息。
使用步骤
- 选模式:区间统计(两日期之间)或推算(数 N 个工作日)。
- 区间模式看总天数、常规工作日与计入调休的实际工作日。
- 推算模式填 N 与起始日,看目标日期;可调「起始日算第 1 天」。
- 数据覆盖 2024~2026;更晚年份待官方安排发布后更新。
计算原理与示例
期间工作日怎么算
期间工作日:填开始/结束日期,统计从开始日(含)到结束日(不含)的区间;有法定假日就把日期填进「法定假日」,周末补班填进「调休上班日」。
加 N 个工作日怎么算
加工作日:填开始日期和 N,从次日起数第 N 个工作日落在哪天。如周四 2026-01-08 加 1 个工作日得周五 2026-01-09;周一加 5 个得下周一。
调休与法定假日规则
调休上班日优先级最高:周末但录了调休,按工作日计;工作日但录了假日,按假日计。
计算依据:工作日按「周一至周五」统计,默认叠加内置的国务院办公厅放假安排(2024—2026 年法定假日与调休补班,可用开关关闭);自定义补充日期以用户录入为准。
代码示例
JavaScript 逐日判断:周末 + 休班表
// HOLIDAYS 同节假日日历工具:{"2026-10-01":"休","2026-10-10":"班"}
function isWorkday(iso, HOLIDAYS) {
if (HOLIDAYS[iso]) return HOLIDAYS[iso] === "班"; // 官方安排优先
const d = new Date(iso + "T00:00:00").getDay();
return d !== 0 && d !== 6;
}
function addWorkdays(startIso, n, HOLIDAYS) {
const d = new Date(startIso + "T00:00:00");
while (n > 0) {
d.setDate(d.getDate() + 1);
if (isWorkday(d.toISOString().slice(0, 10), HOLIDAYS)) n--;
}
return d;
}
Python numpy 工作日(不含中国调休)
import numpy as np
np.busday_count("2026-09-01", "2026-10-01") # 只排周末
np.busday_offset("2026-09-15", 10) # 数 10 个工作日
# 中国调休需自定义 holidays 参数:
np.busday_offset("2026-09-15", 10,
holidays=["2026-10-01", "2026-10-02"])
常见问题
统计区间包含结束日当天吗?
不包含。2026-01-05(周一)到 2026-01-12(下周一)统计的是 7 天里的 5 个工作日,结束日当天不计。这与「截止日前完成」的常见口径一致。
加工作日从哪天开始数?
从开始日期的次日起数。周四加 1 个工作日是周五;周五加 1 个跳过周末是下周一;周一开始数第 5 个工作日是下周一(中间隔一个周末)。
怎么处理国内的调休?
默认不用管:2024—2026 年的法定假日与调休补班已内置,开关打开时自动生效。只有公司自行安排的特殊假期,才需要填进下方「自定义补充休息日 / 补充上班日」。
加工作日支持小数或负数吗?
不支持。N 必须是正整数(至少 1);要往前推算请用「期间工作日」模式倒推。
工作日和自然日有什么区别?
自然日按日历天数计算,包含周末和节假日;工作日只算周一至周五,并跳过法定假日、计入调休补班日。请假、工期、审批时限通常按工作日算,贷款利息、房租租期通常按自然日算。
怎么算两个日期之间的工作日天数?
先求两个日期之间的自然日总数,再扣除落在周末的天数,然后减掉区间内的法定节假日、加回调休上班日。内置数据已覆盖 2024—2026 年,选好日期即可,无需手动录入。
节假日数据需要自己录入吗?
不需要,2024—2026 年的安排已内置(数据来源为国务院办公厅逐年通知)。超出覆盖年份,或公司自定的假期,才需要手动填入自定义补充栏;数据更新会随节假日日历工具一并维护。
延伸阅读
来自本站原创文章,讲清这个工具背后的算法与口径。