日期计算器

全球通用工具

选两个日期统计它们之间的天数,或者选一个日期并向前、向后按天、周、月、年步进。除了总数,你还会得到通常被省略的部分:其中有多少个工作日、以年/月/日表示的日历跨度、落点日期是星期几,以及 ISO 周数。

一页回答两个问题:两个日期相距多久,或从一个日期往后数到哪一天。

默认是打开本页的当天。

第二个日期——早于或晚于都可以,因为计数在打印前会先带上方向。

周一到周五:算结束日是五天,不算四天。

留空则文件名为 date-calculation.txt 和 .csv。

边输入边更新。所有计算都在你的浏览器里完成,数据不会离开本机。

2026 年 11 月 11 日 至 2026 年 12 月 11 日

31 天

4 周零 3 天;按日历算是 1 个月。

工作日
23 周一至周五
周末天数
8
周和天
4 周零 3 天
日历跨度
1 个月
两端都算
31 无论开关怎么选

两个日期

项目2026 年 11 月 11 日2026 年 12 月 11 日
星期星期三星期五
ISO 形式2026-11-112026-12-11
年内第几天315345
季度第 4 季度第 4 季度
ISO 周2026-W462026-W50

同一对日期描述两次:上面的计数是日历算术,这里的行是某人会填在表格上的内容。

从 2026 年 12 月 11 日 起往后数

  • 30 天后:2027 年 1 月 10 日(星期日)
  • 60 天后:2027 年 2 月 9 日(星期二)
  • 90 天后:2027 年 3 月 11 日(星期四)
  • 6 周后:2027 年 1 月 22 日(星期五)
  • 180 天后:2027 年 6 月 9 日(星期三)
  • 6 个月后:2027 年 6 月 11 日(星期五)
  • 1 年后:2027 年 12 月 11 日(星期六)
  • 1000 天后:2029 年 9 月 6 日(星期四)

这个数字使用的惯例

  • 结束日算在内,所以周一到周五是五天——工作排班就是这么数的。
  • 这里的工作日是周一到周五:共 23 天,另有 8 个周末日。公共假日不扣除,因为它们因国家、年份而异——靠猜的答案,恰恰会在有人核对的那一天出错。
  • 对这对日期,两种计数惯例给出相同的数字。
任何留空的日期字段都使用锚点 2026 年 11 月 11 日——本页打开的那一天。改动上面任一日期,所有数字都会跟着变。

计数开关比看起来重要。周一到周五,如果算结束日就是五天——工作排班就是这么数的;如果不算就是四天——酒店账单就是按夜晚数的。两个数字都在页面上,开关决定哪一个领读。

这里的日期是日历日而不是时间点:2026 年 9 月 16 日在任何时区都是 2026 年 9 月 16 日,任何地方都不应用偏移。月和年是逐日历步进而不是相乘,因为 1 月 31 日加一个月是 2 月 28 日——不是 2 月 31 日,也不是 3 月 3 日。

关于这个工具

两个日期之间不止一种站得住脚的计数,开关决定哪一种领读:工时表算两端,酒店算夜晚。除了总数,页面还报告工作日、周末天数、日历跨度、ISO 周数,以及每个答案的测量日期。

算术在你自己的机器上完成:整日计数、月份夹取和 ISO 周都在客户端运行,所以你输入的日期不会被上传,携带它们的 URL 是唯一离开的副本。月和年逐日历步进而不是相乘,因为一个月不是固定天数。

它不扣公共假日,不应用时区或夏令时,也不会猜你的文件期望两种计数惯例中的哪一种。它确切地就是日历算术,并把两种惯例和夹取后的月份步进都打印出来。复制数字之前,请选择与你语境相符的惯例。

它是怎么工作的

两种计数惯例,其中一种由开关控制

1 月 1 日到 12 月 31 日之间的天数是 364 天,如果第一天也算则是 365 天。两者都不错:工时表把班次两端都算上,酒店只数夜晚。开关说明头条数字使用哪种惯例,另一个数字印在下面,所以没人需要猜。

工作日和周末天数按同一惯例统计,因此它们总能加回总数。周五到周一,算结束日是四天:两个工作日和两个周末日。同一对日期不算结束日则是三天:一个工作日和两个周末日。

公共假日被有意排除。不存在唯一一份假日清单——它们因国家、州、年份以及是否安排了补休而不同——所以一个靠猜的页面,恰恰会在最要紧的那天出错。如果你需要的是工作日而不是周一至周五,取工作日计数,再减去你自己的假日清单。

月和年是步进的,不是相乘的

一个月不是固定天数:28、29、30 或 31,取决于月份和年份。乘以 30.44(平均月长)会得到接近、但永远不精确等于某人想表达日期的答案。本页改为逐日历步进,所以 3 月 15 日加三个月是 6 月 15 日,1 月 31 日加三个月是 4 月 30 日,因为 2 月和 4 月都没有 31 日。

这种夹取与日历跨度使用同一规则,所以两者精确互逆:如果页面说两个日期相差一个月,把一个月加到第一个日期上总能得到第二个。显示为“13 个月”的跨度也会显示为“1 年 1 个月”,而同一对日期若打印成“1 个月 30 天”,就说明计算的两半互相矛盾。

年在闰日附近的行为相同:2024 年 2 月 29 日加一年是 2025 年 2 月 28 日,因为 2025 年没有 2 月 29 日。四年后又会回到 2028 年 2 月 29 日。

闰年,以及人们常忘的规则

能被 4 整除的年份是闰年,但如果还能被 100 整除则不是,除非还能被 400 整除。所以 2024 年是闰年,1900 年不是,2000 年是。这条规则让日历与季节对齐:格里高利历平均一年 365.2425 天,而回归年约 365.2422 天,大约每 3200 年漂移一天。

这里的每一步都使用完整规则,而不是“能被 4 整除”的常见捷径——后者会把 1900 年算错一天。页面上的年内第几天会打印它所依据的年份长度——闰年 366,其他年份 365——所以差异是可见的,而不是假设出来的。

周遵循 ISO 8601,不是“第 1 周就是 1 月”

ISO 周从周一到周日,第 1 周是包含当年第一个星期四的那一周。结果是,一年有 52 或 53 周,1 月初的几天可能属于上一年的最后一周:2027 年 1 月 1 日是星期五,所以它属于 2026 年的第 53 周。页面把周数与周年份一起打印(2026-W53),让数字和年份同时说清。

这是欧洲周数、薪资系统和 `%G-W%V` 日期格式背后的惯例。它不同于“一年中的第 38 周”(把年内天数除以七得到的),差异会出现在每年的第一周和最后一周。

示例

示例使用页面自带的默认输入,只改设置;下面的结果与你在页面上看到的完全一致。

一年中的天数

要算什么: 两个日期之间的天数 · 第一个日期: Jan 1, 2026 · 第二个日期: Dec 31, 2026 · 是否计算结束日?: 是——把结束日也算上

2026 年 1 月 1 日 至 2026 年 12 月 31 日

365 天

52 周零 1 天;按日历算是 11 months 30 days。

工作日: 261 · 周末天数: 104 · 周和天: 52 周零 1 天 · 日历跨度: 11 months 30 days

包含两端共 365 天,就是整个 2026 年——它不是闰年。同一对日期不算结束日则是 364 天:开关就是它们之间的全部差异。

一个工作周

要算什么: 两个日期之间的天数 · 第一个日期: Sep 14, 2026 · 第二个日期: Sep 18, 2026 · 是否计算结束日?: 是——把结束日也算上

2026 年 9 月 14 日 至 2026 年 9 月 18 日

5 天

0 周零 5 天;按日历算是 4 天。

工作日: 5 · 周末天数: 0 · 周和天: 0 周零 5 天 · 日历跨度: 4 天

周一到周五,算两端是五天,五天全是工作日。关掉结束日开关就变成四天:数的是夜晚而不是白天。

90 天通知期

要算什么: 从某个日期加减 · 起始日期: Sep 16, 2026 · 方向: 之后 · 数量: 90 · 单位: 天

2026 年 9 月 16 日 之后 90 days

2026 年 12 月 15 日星期二

也就是晚 90 天。日期是逐日历步进的,不是乘出来的,所以月份长度和闰年已经包含在内。

结果: 2026 年 12 月 15 日 · Day of the week: 星期二 · 相隔天数: 90 · 起始日期: 2026 年 9 月 16 日

2026 年 9 月 16 日之后 90 天是 2026 年 12 月 15 日。按天给出的通知是精确的;同样的通知若写成“三个月”会落在 12 月 16 日,这就是单位必须成为答案的一部分的原因。

从月末起算三个月

要算什么: 从某个日期加减 · 起始日期: Jan 31, 2026 · 方向: 之后 · 数量: 3 · 单位: 个月

2026 年 1 月 31 日 之后 3 months

2026 年 4 月 30 日星期四

也就是晚 89 天。日期是逐日历步进的,不是乘出来的,所以月份长度和闰年已经包含在内。

结果: 2026 年 4 月 30 日 · Day of the week: 星期四 · 相隔天数: 89 · 起始日期: 2026 年 1 月 31 日

1 月 31 日加三个月是 4 月 30 日,因为 4 月只有 30 天。页面会说明发生了夹取,而不是悄悄打印一个目标月份里不存在的日期。

常见问题

为什么我的天数比预期多一(或少一)?

因为结束日开关。周一到周五有四个夜晚和五个白天,两者都是“多少天”的合法答案。页面显示你所选惯例的计数,并在下面给出另一个,所以差异是可见的,而不是神秘的。

你们算周末吗?

算,计入总数,并且单独列出:工作日和周末天数与总数并排显示,且能加回总数。工作日是周一到周五。公共假日不扣除,因为没有唯一一份清单可扣。

一年有多少天?

平年 365 天,闰年 366 天。1 月 1 日到 12 月 31 日之间是 364 天,两端都算则加一。闰年规则是能被 4 整除,世纪年除外,每 400 年再除外——所以 1900 年不是闰年,2000 年是。

为什么 1 月 31 日加三个月是 4 月 30 日?

因为 4 月 31 日不存在。4 月有 30 天,所以月份步进会夹取到目标月的最后一天,而不是滚进下一个月。这就是“下个月同一天”通常的含义,页面会在夹取移动了日期时说明。

ISO 周数是什么意思?

ISO 周从周一到周日,第 1 周是包含当年第一个星期四的那一周,所以一年有 52 或 53 周,1 月初可能属于上一年。2026-W38 是 2026 年 9 月 14 日星期一所在的那一周。这是薪资系统和欧洲大部分地区使用的编号。

这里应用时区或夏令时吗?

不。这里的日期是不带时钟的日历日,所以 1 月 1 日在任何地方都是 1 月 1 日,夏令时变化不会让计数差一小时或一天。如果要做跨时区的瞬间到瞬间换算,时区转换器才是正确的工具,因为它处理偏移。

我能只统计两个日期之间的工作日吗?

可以统计周一至周五:无论你选哪种计数惯例,它们都会被报告。页面不会做的是扣除公共假日,因为那取决于国家、州和年份。这个功能的诚实版本需要一份由你选择的假日日历,而在这里猜一份,会在最要紧的那天给出自信的错误答案。

资料来源与统计口径

  • 日历算术遵循格里高利历规则(闰年能被 4 整除,世纪年除外,每 400 年再除外),周编号遵循 ISO 8601。
  • 按月加减会夹到当月最后一天,所以 1 月 31 日加一个月是 2 月 28 日或 29 日,页面会说明发生了这次夹取。
  • 全部在浏览器里本地完成,你输入的日期不会被上传。

最近复核于 2026-09-15.

本页在您的浏览器本地运行,请保留原文件备份;不涉及财务建议。 阅读完整免责声明。