日期间隔天数计算器

计算任意两个日期之间的精确天数、周数、月数或工作日数量。

如何计算天数

计算器会计算开始日期与结束日期之间的日历天数:包含开始日期,但不包含结束日期。这是标准惯例,和计算酒店入住天数或项目持续时间的方式相同。

工作日(business days)不包括周六和周日。公共假期不会被排除,因为各国和各地区的假期不同。如果你需要排除特定假期,请从工作日计数中手动减去。

常见用途

  • 计算合同或项目持续时间
  • 计算距离截止日期、事件或假期还有多少天
  • 为 net-30 或 net-60 等付款条款统计工作日
  • 计算雇佣或租赁的通知期
  • 计算某个事件发生以来过去了多少天

包含 vs 不包含的计数方式

“起始包含、结束不包含”(也称 half-open interval,半开区间)的约定,在日常使用和编程中都最常见。在这种约定下:

  • 3 月 1 日入住、3 月 4 日退房的酒店住宿是 3 晚(3 月 1、2、3 日)
  • 周一到周五的项目是 5 天
  • 1 月 1 日开始的 30 天试用期在 1 月 31 日到期(第 30 天是 1 月 30 日,即最后一个完整日)

一些法律场景使用完全包含的计数方式(开始和结束日期都计入),这会多算一天。如果法律规定:对 1 月 1 日作出的决定必须在 30 天内提出上诉,并且决定日期与提交日期都计入,那么截止日期是 1 月 30 日,而不是 1 月 31 日。在法律层面需要精确时,务必确认适用哪种约定。

将天数转换为其他单位

单位从天数的换算
天 ÷ 7
月(近似)天 ÷ 30.4375
年(近似)天 ÷ 365.25
小时天 × 24
分钟天 × 1,440
天 × 86,400

按月和按年的换算是近似值,因为不同月份天数不同,年份也会因闰年而变化。如果你需要精确的月或年计数,请使用按日历规则计算的年龄或日期差值工具,而不是用平均值相除。

工作日在实际中的范围

一个日历月大约有 20 到 23 个工作日,取决于周末如何落在该月中。一年大约有 260 到 262 个工作日(52 周 × 5 天,±1 或 2 取决于 1 月 1 日是星期几)。这些数字不包含公共假期;在大多数国家,公共假期通常会再减少 8 到 12 天的工作日。

对于付款条款:在大多数商业语境里,net-30 指的是 30 个日历日,而不是 30 个工作日。30 个工作日大约相当于 6 周左右。务必确认条款写的是日历日还是工作日,因为差异会对现金流规划产生实质影响。

对于雇佣通知期:在多数司法辖区里,2 周通知期通常意味着 14 个日历日,而不是 10 个工作日——不过这会因国家和劳动合同而异。一些国家的法定通知期以工作日表示,这就需要知道当地公共假期安排才能精确计算。

实用示例

项目截止日期

4 月 7 日开始、持续 90 天的项目在 7 月 6 日结束。如果合同写的是 3 个月,那么结束日期是 7 月 7 日——晚一天,因为使用的是“月”的概念而不是纯粹的天数计数。

付款条款

3 月 15 日开具、net-30 的发票在 4 月 14 日到期。3 月 1 日开具、net-30 的发票在 3 月 31 日到期。到期日会随每张发票日期而变化,因此在应付账款管理中,使用计算器比心算更可靠。

租赁与租住

9 月 1 日开始的 12 个月租约在次年 8 月 31 日结束——不是 9 月 1 日。租客有权居住到 8 月 31 日,这相当于 365 天(闰年为 366 天)。按惯例,如果租约写到 9 月 1 日结束,通常会被视为 13 个月的租约。

事件与记录的“年龄”

知道某个历史事件、公司成立或冲突开始以来过去了多少天,可以给出一个精确的度量,避免“部分年份如何计算”的歧义。days-between 计算器会直接以整数形式给出结果。