核心答案:计算两个日期相差多少天,逐月累加各月天数即可。例:2026-01-15 到 2026-04-20:1 月剩 16 天(31−15)+ 2 月 28 + 3 月 31 + 4 月 20 = 95 天。"相差天数"不含起始日;若需"含头含尾"的天数则 +1。

日期差的基本算法

  1. 起始月剩余天数 = 当月总天数 − 起始日
  2. 中间完整月份天数累加
  3. 加上结束月的日期数

约定:相差天数 = 结束日 − 起始日(不含起始日);合同、利息场景常需"算头算尾"则 +1。

月份天数与闰年

月份天数月份天数
1 月317 月31
2 月28(闰年 29)8 月31
3 月319 月30
4 月3010 月31
5 月3111 月30
6 月3012 月31

闰年规则:能被 4 整除但不能被 100 整除,或能被 400 整除。2024、2028 是闰年;2100 不是;2000 是。

跨月实例

2026-03-10 到 2026-06-05(2026 非闰年):

  • 3 月剩:31 − 10 = 21
  • 4 月:30,5 月:31
  • 6 月:5
  • 合计:21+30+31+5 = 87 天

跨年实例

2025-11-20 到 2026-03-01:

  • 2025 年 11 月剩:30 − 20 = 10
  • 12 月:31
  • 2026 年 1 月 31 + 2 月 28(非闰年)+ 3 月 1
  • 合计:10+31+31+28+1 = 101 天

工作日怎么估算

  • 粗略:总天数 × 5/7(87 天 ≈ 62 个工作日)
  • 精确:逐周扣除周末,再扣法定节假日
  • 中国法定节假日约 11–13 天/年(调休后),年休假另计
  • 合同中的"N 个工作日"务必确认是否含调休周末

常见误区

  • 「日期差含不含当天无所谓」:差 1 天在计息、违约金场景就是钱。银行计息通常"算头不算尾"(存入日计息、取出日不计)。
  • 「每月都按 30 天算」:月均 30.42 天只适用于年化估算。精确计算必须逐月按实际天数,2 月的 28/29 天差异会累积误差。
  • 「365 天就是一年」:跨年计算要注意是否包含 2 月 29 日。涉及 2024/2028 等闰年时,"一年期"可能是 366 天。