📝 日期与天数
支持跨月、跨年与闰年自动进位
天
结果为 0 表示当天
📊 推算结果
📅
选择起始日期与天数,点击「立即计算」查看结果
ℹ️ 日期推算 · 知识参考
日期加天数/减天数是怎样计算的?
日期推算在程序里的实现很简单:把「天数」直接加到起始日期的日号上,浏览器引擎会自动进位——当月天数不足时自动进入下个月,跨过年底自动进入下一年,同时会根据闰年自动调整 2 月的天数。例如:2026-01-31 加上 30 天,1 月没有第 58 天,自动进位为 2026-03-02;2024-02-29(闰年)加上 365 天则为 2025-02-28(平年 2 月只有 28 天)。
平年与闰年对日期推算的影响
公历的闰年判定规则:年份能被 4 整除且不能被 100 整除,或者能被 400 整除。闰年 2 月有 29 天,全年 366 天;平年 2 月 28 天,全年 365 天。各月份天数对照如下:
| 月份 | 平年天数 | 闰年天数 |
|---|---|---|
| 1月 | 31 | 31 |
| 2月 | 28 | 29 |
| 3月 | 31 | 31 |
| 4月 | 30 | 30 |
| 5月 | 31 | 31 |
| 6月 | 30 | 30 |
| 7月 | 31 | 31 |
| 8月 | 31 | 31 |
| 9月 | 30 | 30 |
| 10月 | 31 | 31 |
| 11月 | 30 | 30 |
| 12月 | 31 | 31 |
因此,凡是跨越 2 月的日期推算,结果会因平/闰年而不同,「加 365 天」并不总是回到同月同日。
星期几是如何得出的?
结果日期的星期几由公历纪日算法直接给出(JS 的 getDay() 返回周日 0~周六 6)。想手动验证时可使用蔡勒公式:W = (d + ⌊2.6m − 0.2⌋ + y + ⌊y/4⌋ + ⌊c/4⌋ − 2c) mod 7(其中 m 为 3~14 表示的月、y 为年、c 为世纪),同样可算出任意公历日期的星期。
常见应用场景
日期推算广泛用于:项目排期(从今天算 30 天后的交付截止日)、合同与证件(保单退出期、保修期到期日)、假期安排(请假 N 天的返岗日期)、纪念日提醒(恋爱/结婚纪念日 N 周年倒计时)以及孕期计算(预产期 ≈ 末次月经 + 280 天)等。使用本工具输入天数即可快速得到精确结果,无需手动翻日历。