年龄计算Age Calculator
输入出生日期,立即得到精确到天的年龄与总天数 / 周数 / 小时多口径分解,附生肖、星座与下次生日倒计时。闰日生日自动对齐、跨月自动截断,纯客户端运行,数据不出本机。
年龄按真实日历借位分解:周岁 = 经过的完整年数,大小月与闰年 2 月自动处理;目标日期早于出生日期会提示错误。
工具介绍
3 段详细说明年龄计算是输入出生日期就能得到精确到天的年龄的工具:X 岁 X 个月 X 天的日历精确分解,外加总天数 / 周数 / 小时等多口径总量,还附赠生肖、星座、出生星期与下次生日倒计时。支持反向推算:满 18 岁、出生满 10000 天是哪一天、星期几、距今还有多久。
所有运算都按真实日历规则进行:大小月、闰年 2 月、月末截断(2月29日出生 → 平年生日按 2月28日)都会正确处理,不会出现「借位出错、年龄差一天」这类问题。底层基于浏览器原生 Date 与 Intl,零依赖、零上传。
相比口算或在 Excel 里写 DATEDIF 公式,本工具打开网页即用、结果一目了然,适合查宝宝月龄、证件周岁判定、生日倒计时等场景。支持每行一键复制、整批复制、⌘+↵ 快捷计算。
基础知识 · 年龄与历法
周岁口径 · 格里高利历「你多大了」看似简单,背后却是周岁 / 虚岁、闰日、农历与公历的口径差异。年龄计算之所以容易出错,正是因为这些「不一致」。理解以下 6 个关键概念,就能解释绝大多数计算差异:
full years周岁怎么算nominal age虚岁与周岁1 岁、每过一个春节加一岁(部分地区传统计龄),比周岁大 1-2 岁。证件、合同、医疗一律以周岁 / 出生日期为准,两者不要混用。leap day2月29日生日zodiac生肖循环(年份 − 4) mod 12 → 鼠牛虎兔龙蛇马羊猴鸡狗猪。如 2024 → 龙。严格口径以农历正月初一或立春为界。star sign星座划分19-24 日之间是「交界日」。本工具按通行区间表判定,交界日结果仅供参考。calendar borrow借位与截断28/29/30/31),月不够向年借,保证分解永远精确、不出现负数。function age(birth: Date, now: Date) { let y = now.getFullYear() - birth.getFullYear(); let m = now.getMonth() - birth.getMonth(); let d = now.getDate() - birth.getDate(); if (d < 0) { m--; d += new Date(now.getFullYear(), now.getMonth(), 0).getDate(); } if (m < 0) { y--; m += 12; } return { y, m, d }; // 日不够借上个月天数,月不够借 12 个月}new Date(y, m, 0) 的「0 日」表示上个月最后一天,是取任意月份天数的标准技巧;闰年由 Date 原生处理,无需自己写规则。使用说明
4 步快速入门使用场景
5 个真实案例宝宝出生几周几个月零几天,满月 / 百天 / 周岁倒计时一键可得,发朋友圈文案直接复制。
下次生日还有多少天、落在星期几,提前安排庆祝;闰日生日自动对齐 2月28日。
入学、入职、退休、比赛年龄组按周岁判定,精确到天避免「差一天不够格」的口径争议。
满 18 岁 / 30 岁 / 出生满 10000 天是哪一天、星期几、距今还有多久,规划仪式感。
整理家庭成员精确年龄,生肖星座一并列出,填写表格、建立档案一步到位。
常见问题
10 个问答周岁和虚岁有什么区别?
周岁按出生日期数完整年数(本工具口径,生日当天满岁);虚岁出生即 1 岁、每过一个春节加 1 岁,比周岁大 1-2 岁,是部分地区的传统计龄。证件、合同、医疗一律以周岁 / 出生日期为准。
年龄精确到什么程度?
「精确年龄」按真实日历借位分解到天(X 岁 X 个月 X 天);另给总天数 / 周数 / 小时 / 分钟 / 秒总量口径。本工具按「日」计算,不区分出生时刻。
2月29日出生,平年怎么算生日?
按主流日期库(Java、.NET、Python dateutil)的统一规则截断到 2月28日。下次生日推算同样适用:闰年回到 2月29日,平年落在 2月28日。
生肖按什么口径?
按公历出生年份近似推算:(年份 − 4) mod 12 对应鼠牛虎兔龙蛇马羊猴鸡狗猪。严格来说生肖以农历正月初一(或立春)为界,春节前出生的公历年可能对应上一个生肖,请以农历为准。
星座交界日准吗?
星座按公历日期区间划分,每月 19-24 日出生可能贴近交界。本工具采用通行区间表判定;占星学上交界日还需结合出生年份与时刻,仅供参考。
下次生日是怎么算的?
先取今年生日(2月29日按平年截断为 2月28日);若今年生日已过,自动顺延到明年,并给出倒数天数与当天星期。目标日期当天恰好是生日时显示「今天生日!」。
目标日期可以改成过去吗?
可以。目标日期早于今年时年龄照常计算(比如查某个历史时点某人几岁);但目标日期早于出生日期会给出红字提示——没人能在出生前就有年龄。
时区会影响结果吗?
本工具按浏览器本地时区的「日期」计算,不涉及时刻。跨时区场景下「今天」可能不同(如北京时间与纽约差一天),请以出生地 / 使用地惯用时区为准。
我的数据会上传到服务器吗?
不会。所有计算在浏览器内存中完成,出生日期不上传任何服务器。可断网使用,关闭网络后再打开仍能正常工作。
结果可以一键复制吗?
可以。鼠标悬停任意结果行会出现复制图标,单击只复制该行;也可以点底部「复制全部」,把全部口径按「字段名: 值」多行文本一次复制。
相关工具
计算分类数据来源
隐私优先Date 对象与 Intl.DateTimeFormat,无任何第三方依赖。周岁借位、月末截断与下次生日推算在本地用原生方法实现,无 WASM、无 polyfill。