日期加减计算器

选择起始日期和加减方向,即可查看若干天、周、月或年后的结果日期与星期。

数量

结果日期

日期加减计算器怎样推算结果

日历上的起始日期向前或向后移动到结果日期

选择起始日期、增加或减去、数量以及天、周、月、年,计算器会给出结果日期、星期、ISO日期和实际相差天数。

先判断需要固定天数还是日历位置

“21天后”要求日期准确移动21个自然日,遇到周末、月末和跨年也照常计数。“3周后”与它相同,因为这里的一周始终是7个自然日。

Δd=qn,Δd=q7w\Delta d=q\cdot n,\qquad\Delta d=q\cdot 7w

n是天数,w是周数,增加时q取1,减去时取-1。结果不跳过周六、周日或节假日。

“一个月后”问的是日历中的下一个月,不是30天后。“一年后”也不是固定增加365天。需要固定天数时选“天”或“周”,需要尽量保留月中的日期位置时选“月”或“年”。

结果日期是主要答案。星期便于对照日程,YYYY-MM-DD格式用于消除数字日期的歧义。ISO 8601采用年、月、日顺序表示明确的公历日期。ISO 8601日期和时间格式

月末调整会改变实际经过的天数

按月或按年计算时,程序先得到目标年份和月份,再尝试保留起始日期中的“日”。如果目标月份没有这一天,就改为该月最后一天。

dt=min(ds,D(yt,mt))d_t=\min\left(d_s,D(y_t,m_t)\right)

dsd_s是起始日期的日,dtd_t是结果日期的日,D(yt,mt)D(y_t,m_t)是目标年月的天数。TC39 Temporal的日历文档也把这种做法描述为受约束的日期运算,即把无效日期调整为最接近的有效日期。TC39 Temporal日历文档

辅助结果“实际相差天数”用连续自然日序号核对这次移动到底跨过多少天。

Δd=E(r)E(s)\Delta d=E(r)-E(s)

E(r)E(r)是结果日期的日序号,E(s)E(s)是起始日期的日序号。减去日期时差值为负数。同样是增加一个月,在不同月份可能得到28、29、30或31天的差值。

计算范围是公元1年至9999年,并在整个范围沿用现行公历规则。能被4整除的年份通常是闰年,但能被100整除而不能被400整除的年份不是闰年。美国海军天文台, Introduction to Calendars

这种推算不会还原某个国家历史上改用公历的日期,也不处理农历。古籍中的日期需要先确认原历法,再使用可靠的历法转换资料。

计算器只处理没有时刻和时区的公历日期。它不知道夏令时、跨时区后的当地日期,也不识别工作日和节假日。TC39将PlainDate定义为不带时间与时区的日历日期,这正是本工具的计算边界。TC39 Temporal PlainDate

数量只能输入0以上的十进制整数,不能输入小数、指数、正负号或其他字符。要向过去推算,请选择“减去”。合同、诉讼、申报和付款期限还可能规定起算日、顺延和工作日,不能只靠这里的结果确定。

用三种任务检查结果

固定三周。 从2024-05-10开始,选择增加3周。结果是2024年5月31日星期五,ISO日期为2024-05-31,实际相差+21天。三周正好跨过21个自然日,所以星期没有改变。

平年月底。 从2023-01-31开始增加1个月。结果是2023年2月28日星期二,ISO日期为2023-02-28,实际相差+28天。目标月份没有31日,因此停在2月最后一天。

闰年向前倒推。 从2024-03-31减去1个月。结果是2024年2月29日星期四,ISO日期为2024-02-29,实际相差-31天。这里先移动到2月,再把不存在的31日调整到闰年的2月末。

闰日跨一年。 从2024-02-29增加1年,得到2025年2月28日星期五,ISO日期为2025-02-28,实际相差+365天。2025年没有2月29日,所以结果落在月末。

日期推算中的常见问题

读懂单位和工具边界后,才能把结果用于合适的日程,而不是让一个普通日期替你解释所有规则。

增加30天和增加1个月一样吗?

不一定。30天始终移动30个自然日,1个月则移动到下一个日历月并尽量保留原来的日。月份长度不同,两个结果可能不同。

1月31日增加1个月会报错吗?

不会。结果会调整到2月最后一天,闰年为2月29日,平年为2月28日。

数量可以直接输入负数吗?

不可以。数量只接受0或正整数。要向过去计算,请选择减去。

能按中国法定工作日计算吗?

不能。工具不会跳过周末、法定节假日或调休日,也不会应用任何期限规则。

能计算农历日期吗?

不能。这里使用公历规则,不进行农历、公历互换。

时区会让结果改变吗?

本计算没有时刻和时区,因此结果不随时区改变。若要换算某一瞬间在不同地区的当地日期,需要使用带时区的工具。

类似计算器

以下与此主题相关的计算器可能对您有用:

在社交媒体上分享

如果您喜欢,请在您的社交媒体平台上分享计算器。对您来说很简单,对项目的推广很有帮助。谢谢!