日期加减计算器
从一个日历日期开始,加上或减去年、月、周、天,得到精确的结果日期。
计算方式
公式
变量、符号和单位
- 精确天数部分中的完整周数
- 偏移中的额外完整天数
- 固定在 UTC 午夜的起始日期
- 固定在 UTC 午夜的最终日期
计算方法说明
输入起始日期、方向以及年、月、周、天四个偏移量。计算器先用严格公历规则处理年和月,必要时将月末日期夹到目标月最后一天,再把周和天作为精确天数应用。结果会同时显示最终日期、星期和净天数变化。
逐步公历日期偏移:
- 将起始日期解析为一个明确的 ISO 日历日期。
- 将方向转换为符号:加为正,减为负。
- 先应用带符号的年和月,并尽量保留原来的日号。
- 如果目标月份没有这个日号,就夹到该月最后有效日期。
- 用 把周和天转换为精确天数,并在年/月步骤之后应用。
- 从结果日期得到星期,并从起始和结果的 UTC 日期差得到净偏移天数。
常见问题
计算器按什么顺序应用偏移?
顺序固定:先按公历规则应用年和月;如果目标月份没有原来的日号,就夹到该月最后一天;然后再把周和天作为精确天数加上或减去。
为什么 1 月 31 日加 1 个月会变成 2 月 28 日或 29 日?
因为 2 月没有 31 日。计算器先落到目标月份的最后有效日期,再继续处理后续的周数和天数。
2 月 29 日在平年会怎样?
如果闰日日期偏移到平年,对应步骤会夹到 2 月 28 日。例如 2024-02-29 + 1 年 = 2025-02-28。
它和日期差、星期几计算器有什么不同?
这个页面把一个已知日期转换成新的日期。日期差计算两个已知日期之间的跨度,星期几计算器只标出某一天是星期几。
应该输入什么日期格式?
使用页面内置的 ISO 日期字段,让起始日期在所有语言中都保持明确。计算规则不随语言改变。