日期计算器

本地运行输入不出浏览器免登录免费

日期间隔的算法其实只有一句话:把两个日期各自换算成从同一天起算的天数,再相减。这个工具就是这样算的,所以闰年、大小月、跨年都不会被估算带偏。举例来说,2026 年 1 月 1 日到 2026 年 4 月 3 日是 92 天:1 月剩 30 天、2 月 28 天、3 月 31 天,再加 4 月的 3 天。按每月 30 天估算会得到 90 天,差了整整 2 天——这就是为什么日期不能按平均月长去乘。分解结果用的是真实日历:先扣掉完整的年,再扣掉完整的月,剩下的才是天数。2024 年 2 月 29 日到 2025 年 3 月 1 日分解为 1 年 0 月 1 天,而不是 365 天除以 30 的约数。

三个场景最常用到它。第一是请假与工期:请年假要知道一段假期里有几个工作日,项目排期要知道从开工到交付之间隔了多少天、多少周,合同里的通知期、账期、试用期也都是按天算的,数错一天就可能错过截止日。第二是旅行与活动:出发前还有多少天、酒店住了几晚、活动筹备还剩几周,都是同一类问题,只是含不含最后一天的算法要分清。第三是截止日期推算:签约日加 90 天是哪天、账单日加 30 天是哪天、生日再过多少天,用日期加减一页就能算出来,不用在日历上逐格数。

边界情况有四处最容易出错。第一是含不含结束日:默认不含结束日那一天,1 月 1 日到 1 月 5 日是 4 天;请假按天算时往往要勾选含结束日,变成 5 天;酒店住宿按夜算时则用默认口径,1 月 1 日入住、1 月 5 日退房是 4 晚。第二是工作日不扣法定节假日:工具只按星期一到星期五算,春节、国庆这类假期要自己再减去,算精确工期时尤其要注意。第三是月末进位:1 月 31 日加 1 个月没有 2 月 31 日,结果退到 2 月 28 日,闰年退到 2 月 29 日;2 月 29 日加 1 年同样退到次年 2 月 28 日。第四是起止颠倒:结束日期早于起始日期时,间隔按绝对值算,结果不变,但星期几那两行仍按你输入的两个日期各自显示。

再给两个可以直接核对的例子。例一:2026 年 3 月 2 日星期一到 2026 年 6 月 15 日星期一,总天数 105 天,等于 15 周整,分解为 3 个月 13 天,工作日 75 天、周末 30 天——因为起止都是星期一,整周数没有余数,工作日正好是总天数的七分之五。例二:基准日期 2026 年 1 月 31 日加 1 个月,结果是 2026 年 2 月 28 日;同一个基准日期减 30 天,结果是 2026 年 1 月 1 日。两个例子都可以在工具里输入复算,数字对不上就说明输入里有某处被理解错了,先看含不含结束日和月末进位这两条。

使用方法

  1. 算间隔:选两日期间隔模式,输入起始日期与截止日期,默认不含结束日那一天;请假按天算时勾选含结束日期。
  2. 看结果:总天数、整周数与余下天数、工作日天数与周末天数、年与月与天的日历分解会一起显示,另有起止两个日期各自是星期几。
  3. 算加减:切到日期加减模式,输入基准日期,选加或减,再填年数、月数、天数,顺序是先年、后月、最后天。
  4. 核对月末:如果结果落在月末不存在的日期,例如 1 月 31 日加 1 个月,结果会退到当月最后一天,这是按真实日历算的,不是错误。
  5. 复制结果:点复制结果可以把总天数、工作日与周末天数,或加减得到的结果日期粘贴到请假单、合同或日程里。

常见问题

两个日期相隔几天,含不含最后一天?

默认不含结束日那一天:1 月 1 日到 1 月 5 日是 4 天,相当于两个日期相减。勾选含结束日期后是 5 天,相当于把起止两天都算进去。请假按天算通常用含结束日的算法,酒店按夜算用默认算法,选错口径就会差一天。

工作日天数扣不扣法定节假日?

不扣。工具只按星期一到星期五算,法定节假日、调休、公司假都要自己再减去。例如一段假期里算出 10 个工作日,其中有 2 天是法定假日,实际工作日就是 8 天。算精确工期或请假天数时,这一步不能省。

1 月 31 日加 1 个月为什么是 2 月 28 日?

因为 2 月没有 31 日。日期加减先加年、再加月、最后加天,加到月末不存在的日期时退到当月最后一天:1 月 31 日加 1 个月是 2 月 28 日,闰年是 2 月 29 日;2 月 29 日加 1 年是次年 2 月 28 日。这是真实日历的规则,不是四舍五入。

结束日期比起始日期早,结果会怎样?

间隔按绝对值算,结果不变:2026 年 6 月 15 日到 2026 年 3 月 2 日,和反过来算一样是 105 天。星期几那两行仍按你输入的两个日期各自显示,所以能看出来哪一个在前、哪一个在后。

闰年是怎么处理的?

按公历闰年规则算:能被 4 整除且不能被 100 整除,或者能被 400 整除的年份是闰年,2 月有 29 天。2028 年是闰年,2026 年与 2100 年不是。跨越 2 月 29 日的间隔会把这一天算进去,2028 年 2 月 1 日到 3 月 1 日是 29 天,2026 年同样一段是 28 天。