piapia123
zh

宝宝纪念日计算

转换

所有处理都在浏览器本地完成,数据不上传服务器

输入
输出

填一个出生日期,右边给出各个纪念日是哪一天、还有几天,以及宝宝现在几岁几个月零几天。 「百日」有两种数法,这里两个都给。 出生当天算第 1 天的话,第 100 天是出生后第 99 天;算第 0 天则是第 100 天。两种数法都有人在用,争哪一种对没有意义 —— 你要的是别弄错。所以表里同时列出「出生满 100 天」与「百日(出生当天算第 1 天)」,各配一个日期,按你家的习惯取。 满月与周岁是「下个月的同一天」,不是「加 30 天」。 1 月 31 日出生的宝宝,满月是 2 月 28 日(夹到月末),而不是 3 月 3 日 —— 后者是直接对 JS 的日期做月份进位会得到的结果,也是这类工具最常见的错法。 2 月 29 日出生的宝宝会单独说明。 平年没有 2 月 29 日,所以那年的生日落在 2 月 28 日。各地习惯不同,这里不去替你选,而是把口径写出来。 ⚠️ 不给「虚岁」。 虚岁要从农历推(出生即 1 岁,过农历年长一岁),而这个工具没有农历数据。按公历硬凑出来的虚岁会到处差一岁 —— 比不给更糟。 全程在本机计算。出生日期是最不该随手发给第三方的东西之一。

功能

  • 同时给出「出生满 100 天」与「百日」两个日期,不替你选数法
  • 满月、周岁按「下个月的同一天」算,1 月 31 日出生不会变成 3 月 3 日
  • 每个纪念日都标出「还有 N 天」或「已过去 N 天」,就是今天则标「就是今天」
  • 周岁按真实日历算到「几个月零几天」,不是把天数除以 30
  • 闰日出生(2 月 29 日)单独说明平年的口径
  • 可以指定「按哪一天算」,用来回看过去的某一天或先看将来的安排
  • 可选「只看还没到的纪念日」,把已经过去的收起来
  • 全程本机计算,日期不出这个页面

使用方法

  1. 填出生日期(2026-03-05 或 2026/3/5 都行)
  2. 右边立刻列出各纪念日与倒计时
  3. 想按别的日子看,改「按哪一天算」
  4. 想只留还没到的,勾上那个勾选框

常见问题

「百日」到底是出生后第 99 天还是第 100 天?
两种数法都有人用,所以这个工具两个都列出来:出生当天算第 1 天的那种,「百日」是出生后第 99 天;出生当天算第 0 天的那种,是第 100 天。表里对应「百日(出生当天算第 1 天)」与「出生满 100 天」两行,各配一个日期。民俗上的算法各地不一,与其替你选一个然后弄错,不如把两个口径都写清楚。
满月为什么不按 30 天算?
因为「满月」是下个月的同一天,不是一段固定长度。按 30 天算的话,1 月 31 日出生的宝宝满月会落到 3 月 2 日,而实际上 2 月 28 日就满一个月了。这里用的是「加一个月、没有那一天就取月末」,所以 1 月 31 日出生 → 2 月 28 日满月,5 月 31 日出生 → 6 月 30 日满月。直接对 JS 的日期对象做月份进位得不到这个结果:它会「溢出」而不是「夹取」,1 月 31 日加一个月变成 3 月 3 日。
2 月 29 日出生的宝宝,平年怎么过生日?
这个工具把平年的生日按 2 月 28 日算,并在结果里明确写出这一条。各地习惯并不统一 —— 有算 2 月 28 日的,也有算 3 月 1 日的。与其默默替你选一个,不如把口径摆出来,你按自己家的习惯用。周岁那一行的「几个月零几天」也按同一个口径推。
为什么没有虚岁?
因为虚岁要按农历推:出生即 1 岁,过一个农历年长一岁。这个工具没有农历数据,按公历硬凑出来的虚岁会到处差一岁 —— 那样还不如不给。(农历转换是另一件事,需要一份农历数据才能做对。)

相关工具