日期差计算器

选两个日期,立刻知道相差多少天、几周、几个月、几年。

计算结果
年、月、天
总天数
周数
月数
年数(约)
选择开始和结束日期,结果实时更新。

所有计算都在你的浏览器里完成,选择的日期不会上传到 BroBroGo。

常见问题

月数和年数是怎么算的?

按真实日历推算:先数满几年,再数满几个月,剩下的算作天数。大小月和闰年都会自动处理;如果起始日在目标月份不存在——比如 1 月 31 日加一个月——就落在 2 月的最后一天,和银行、表格软件的惯例一致。

要不要把结束日算进去?

看你在数什么。周一到周五相隔 4 天,但住店、租借这类两头都占的场景是 5 天。当最后一天本身也要计入时,勾上这个选项,所有结果都会多算一天。

结束日期比开始日期早会怎样?

不会报错——工具会自动按时间先后比较,并在状态栏提示。所以也可以倒着数,比如某件事到今天已经过去了多少天。

真实日历计算的复杂性与规则

计算两个日期之间的跨度看似简单,但在实际应用中,日历的复杂规则使得手动计算极易出错。公历中不仅存在大月(31天)和小月(30天),2月份还分为平年(28天)与闰年(29天)。

本工具在计算时完全遵循真实日历规则。例如,当起始日期在目标月份中不存在时,计算会自动进行月末对齐。若以 1 月 31 日为起点计算一个月后的日期,由于 2 月没有 31 日,计算将自动落在 2 月的最后一天(平年为 2 月 28 日,闰年为 2 月 29 日)。这种处理方式与银行及主流表格软件的行业惯例完全一致。

包含与排除结束日的计算差异

在不同的应用场景中,对日期范围的界定存在“包含”与“排除”两种逻辑。

  • 排除结束日(默认):计算的是两个时间点之间的纯间隔。例如,从周一到周五,间隔为 4 天。
  • 包含结束日:当最后一天本身也需要计入活动周期时(如旅行住宿、设备租借或项目工期),则需要将结束日算作完整的一天。

在工具中勾选“把结束日也算作一整天”后,计算结果中的所有数值都会自动增加 1 天,以适应两头都占的实际需求。

多维度时间跨度解析

为了满足项目管理、财务结算及日常生活规划等不同场景的需求,计算结果提供了多种维度的数值呈现:

结果维度 计算说明
年、月、天 按照真实日历,先计算完整的年数,再计算剩余的完整月数,最后计算零星天数。
总天数 两个日期之间绝对相差的总天数。
周数 总天数除以 7 得到的周数。
月数 两个日期之间的总月数。
年数(约) 基于回归年平均长度,按每年 365.2425 天折算出的近似年数。

异常输入与自动纠错机制

为了保证交互的流畅性,工具内置了自动纠错与状态提示机制:

  • 日期顺序自动调整:如果输入的结束日期早于开始日期,系统不会中断报错,而是会自动按时间先后顺序进行比较,并显示提示信息:“结束日期早于开始日期,已按时间先后顺序计算。”。
  • 无效日期拦截:若输入了不存在的日期,系统会提示错误信息:“这不是一个有效的日期。”。
  • 实时更新与重置:工具默认将开始日期设为当天。当清除结束日期时,界面会清空结果并显示提示:“选择开始和结束日期,结果实时更新。”。

浏览器本地处理与隐私保护

本工具在设计上严格保护用户的数据隐私。所有的日期差值计算均在你的浏览器里完成,你所选择和输入的任何日期数据都不会上传到 BroBroGo 服务器。


常见问题

月数和年数是怎么算的?

按真实日历推算:先数满几年,再数满几个月,剩下的算作天数。大小月和闰年都会自动处理;如果起始日在目标月份不存在——比如 1 月 31 日加一个月——就落在 2 月的最后一天,和银行、表格软件的惯例一致。

要不要把结束日算进去?

看你在数什么。周一到周五相隔 4 天,但住店、租借这类两头都占的场景是 5 天。当最后一天本身也要计入时,勾上这个选项,所有结果都会多算一天。

结束日期比开始日期早会怎样?

不会报错——工具会自动按时间先后比较,并在状态栏提示。所以也可以倒着数,比如某件事到今天已经过去了多少天。