反馈

日期计算

本地计算,日期不上传。相关: 工作日计算 · 今天是第几天 · 年龄生日计算 · 万年历 · 预产期计算

📖 工具说明

1. 两种算法

两个日期之间:给开始和结束日期,算出相差多少天,并同时给出:

日期加减:给一个基准日期,加或减一段时长(年 / 季 / 月 / 周 / 天可组合,如「2 年 3 个月」或「2 个季度」),得到目标日期,并给出星期几、是当年第几天、ISO 第几周。

顺序是先加年、季、月,再加周、天(1 季按 3 个月算)。加月时若溢出(如 1 月 31 日 + 1 个月)会落到当月最后一天。

全部在浏览器本地计算,日期不上传。

2. 常见口径

场景 常用算法
合同 / 计息 一般「算头不算尾」= 结束日 − 开始日
酒店 / 租房(间夜) 离店日 − 入住日
宝宝天数 / 寿辰 一般含出生当天,出生日记为第 1 天(勾「包含起始日」)
工龄 / 项目周期 看「X 年 Y 月 Z 天」分解

3. 常见问题(FAQ)

Q:结果考虑闰年吗? A:考虑。基于标准历法库(Luxon),跨几十年也准确,2 月按当年实际 28/29 天。

Q:为什么"一个月"有时算出来天数不一样? A:月的天数本来就不固定(28–31 天)。做「几年几月几天」分解时按日历自然月逐月扣减,符合直觉;换算成纯天数时才是精确的日历天数。

Q:加减和相差结果对不上? A:「相差」给的是两个具体日期之间的日历天数;「加减」按年→月→周→天依次推进,遇到月末溢出会取当月最后一天,二者口径不同属正常。

Q:能算 1900 年前的日期吗? A:<input type="date"> 一般支持较早年份,工具本身按公历(格里高利历)计算,不处理 1582 年历法改制前的儒略历。

Q:数据会上传吗? A:不会,纪念日、合同日期等只在浏览器本地处理。


相关:工作日计算 · 今天是第几天 · 年龄生日计算 · 万年历。

📖 相关推荐