天转微秒换算工具

把 ns、us、ms、s、min、h、d、周、儒略年放进同一个换算器:1 平太阳日 = 86400 s = 86400000000 us,1 儒略年 = 31557600.0 s。数值一改就重算。

默认示例:1 平太阳日换成微秒,得到 86400000000 us,这是个整数定义值。
1 d = 86400000000 us 单位汇率:1 d = 86400000000 us 折算成基准单位:86400 s -- 同一数值展开到九种单位 -- 86400000000000 ns 86400000000 us 86400000 ms 86400 s 1440 min 24 h 1 d 0.142857 周 0.002738 儒略年 -- 批量(目标单位 us)-- 1 d = 86400000000 us 0.5 d = 43200000000 us 7 d = 604800000000 us 365 d = 31536000000000 us 1000 d = 86400000000000 us

默认示例:1 天换成微秒。数值、单位、小数位任意一项改动即重新计算,光标停在数值框里按回车同样触发一次。

使用方法

  1. 「数值」默认填 1,允许 0 到 100000000,支持小数;「源单位」默认 d,「目标单位」默认 us。改任意一项立刻重算,光标停在数值框里按回车同样触发一次换算。
  2. 「源单位」与「目标单位」各有九个选项:ns、us、ms、s、min、h、d、周、儒略年。按秒折算的因子依次是 1e-9、1e-6、0.001、1、60、3600、86400、604800、31557600。周是 7 天的整数倍,儒略年按 365.25 天算。
  3. 「小数位」默认 6,范围 0 到 10。它只影响显示,把结果四舍五入到指定位数;内部换算全程用双精度浮点数,不因为显示位数少而降精度。
  4. 「批量换算」默认已经写好五行示例,每行一条「数值 + 空格 + 单位」,周要写「周」字。按 Ctrl+Enter(Mac 上 Cmd+Enter)一次算完;万一被清空,点换算时会自动填回这五行。
  5. 结果区给出「原值 源单位 = 结果 目标单位」这一行,下面跟着同一数值展开到九种单位的清单,用来核对数量级有没有看错一位。
  6. 清单下面是一张 12 行的倍率表,把当前数值乘以 0.001 到 1000 逐个换算,默认显示 6 行,点「加载更多」展开全部,点「导出 CSV」存成带字节序标记的表格文件。
  7. 「交换单位」把源与目标对调,用来反着核一遍;「复制结果」复制整段结论;「复制对照表」复制正文那张 12 行的天到微秒对照表。
  8. 数值为负、超过上限、不是数字,或批量行写成「1天」「1 天」这类识别不了的形式,都会给出针对该条的具体提示,不会拿上一次的结果冒充本次输出。

这个天转微秒换算工具能解决什么问题

第一类是日志与监控的时间戳对齐。应用日志打的是毫秒或微秒级时间戳,告警规则写的是「超过 3 天」,两边差了八个数量级;把 3 d 折成 259200000000 us 再与阈值比对,比在脑子里数零可靠得多。

第二类是超时与重试参数。某些接口的超时字段以微秒为单位,而人的直觉以天为单位:1 天是 86400000000 us,0.5 天是 43200000000 us。配置里少写一个零就变成 8.64 天,多写一个零就变成 2.4 小时,都是线上事故。

第三类是「一天到底多少秒」的分歧。平太阳日是 86400 s,恒星日只有 86164.0905 s,两者差 235.9095 s;UTC 因为闰秒会出现 86401 s 的最长日与 86399 s 的最短日,而 Unix 时间戳的一天恒为 86400 s。算跨天时长时选错口径,累计值就会对不上。

第四类是长周期换算。1 儒略年 = 31557600.0 s = 365.25 平太阳日,与日常说的 365 天(31536000 s)差 21600 s;按年计费、按年折旧、按年摊销的场景如果混用这两种年,一年下来就是 6 小时的偏差。

这个工具在本站也叫「天转微秒」,名字里的天默认是平太阳日,下面会讲清它和恒星日、闰秒日的区别。

计算原理与变量说明

本页的换算只有一步:先把输入值折成秒,再从秒折到目标单位。给每个单位配一个「相当于多少秒」的因子 F:ns 是 1e-9、us 是 1e-6、ms 是 0.001、s 是 1、min 是 60、h 是 3600、d 是 86400、周是 604800、儒略年是 31557600。于是 结果 = 数值 × F[源单位] ÷ F[目标单位]。

以默认示例走一遍:输入 1 d,折秒得 1 × 86400 = 86400 s;再折微秒得 86400 ÷ 1e-6 = 86400000000 us。同一数值展开到九种单位时,纳秒那一列是 86400000000000,儒略年那一列是 0.002738,两端相差十六个数量级。

为什么恒星日比太阳日短 3 分 56 秒。恒星日以遥远恒星为参照,地球自转一整圈需要 86164.0905 s;太阳日以太阳为参照,地球在自转的同时还沿公转轨道前进了约 1 度,必须再多转约 3 分 56 秒才能再次对准太阳。这个差值 235.9095 s 就是 86400 减 86164.0905。

为什么 Unix 时间戳没有闰秒。Unix 时间戳定义为「自 1970-01-01 起经过的秒数」,实现上把每一天都当成 86400 s,闰秒那一分钟被重复计数或摊平,不做加减。于是 UTC 实际比 Unix 时间戳多走了已插入的正闰秒次数:截至 27 次正闰秒,累计多走 27 s = 27000000 us。做跨闰秒的时长统计时必须手动补这一项。

闰秒日的边界。插入正闰秒的那一天 UTC 有 86401 s,是最长的一天;若出现负闰秒则是 86399 s,是最短的一天。GPS 时、儒略日、平均回归年都不带闰秒,它们的一天恒为 86400 s = 86400000000 us,与 Unix 时间戳一致而与 UTC 不一致。

微秒的溢出边界。本页用双精度浮点数,它能精确表示的整数上限是 2^53 = 9007199254740992。1000 天折成微秒已经是 86400000000000,比 2^53 还大一个数量级,此时末几位不再精确。需要逐微秒精确的场合请改用整数运算或大数库,本页结果在超大数值下只保证前 15 位有效数字。

完整示例(数值仅作演示)

默认示例是 1 d 换成 us:秒数 = 1 × 86400 = 86400 s,结果 = 86400 ÷ 1e-6 = 86400000000 us。同一数值展开到九种单位是 86400000000000 ns、86400000000 us、86400000 ms、86400 s、1440 min、24 h、1 d、0.142857 周、0.002738 儒略年。

把数值改成 0.5:0.5 d = 43200000000 us。半天这个档常用于「任务最长存活时间」这类配置。

把数值改成 7:7 d = 604800000000 us。一周是 7 个平太阳日的整数倍,与「周」这个单位的定义 604800 s 完全吻合,可以拿来互验。

把数值改成 365:365 d = 31536000000000 us。注意它与 1 儒略年的 31557600000000 us 不同,差 21600000000 us(6 小时),因为儒略年按 365.25 天算。

批量框默认五行,目标单位 us:1 d 得 86400000000 us;0.5 d 得 43200000000 us;7 d 得 604800000000 us;365 d 得 31536000000000 us;1000 d 得 86400000000000 us。最后一行跨到十万亿量级,正好用来观察显示格式有没有退化。

天与微秒对照表

下表把天换成微秒,同时给出秒数,全部按 86400 s 这个平太阳日定义折算。

天 d微秒 us秒 s天 d微秒 us秒 s
0.0018640000086.4002.000172800000000172800.000
0.010864000000864.0007.000604800000000604800.000
0.10086400000008640.00030.00025920000000002592000.000
0.2502160000000021600.00090.00077760000000007776000.000
0.5004320000000043200.000365.0003153600000000031536000.000
1.0008640000000086400.0001000.0008640000000000086400000.000

下面这张表回答「一天到底多少秒」:不同口径差出来的那几秒,在累计计算里会被放大。

口径秒 s微秒 us与平太阳日之差
平太阳日(定义)86400.000086400000000基准
恒星日86164.090586164090500短 235.9095 s
闰秒日的 UTC 最长86401.000086401000000长 1 s
负闰秒日的最短86399.000086399000000短 1 s
Unix 时间戳的一天86400.000086400000000恒为 86400,不闰秒
儒略日86400.000086400000000恒为 86400
GPS 时的一天86400.000086400000000恒为 86400
平均回归年的一天86400.000086400000000恒为 86400

再看正闰秒是怎么把 UTC 与 Unix 时间戳拉开的,每插入一次就多走一秒。

正闰秒次数UTC 比 Unix 多走折成微秒
00 s0 us
1010 s10000000 us
2020 s20000000 us
2727 s27000000 us

读第一张表看量级:天每涨十倍,微秒同步涨十倍,秒那一列始终比微秒少六个零。读第二张表看口径:只有恒星日、闰秒日、负闰秒日三行偏离 86400,其余五行都恒为 86400——这正是「Unix 时间戳没有闰秒」的直接后果。

结果边界、舍入与适用说明

常见问题

1 天为什么是 86400 秒而不是 86164 秒?

86400 是平太阳日,以太阳为参照;86164.0905 是恒星日,以遥远恒星为参照,两者差 235.9095 s。地球自转一圈的同时还沿公转轨道前进约 1 度,必须再多转约 3 分 56 秒才能再次对准太阳。日常计时、Unix 时间戳、GPS 时用的都是平太阳日。

Unix 时间戳遇到闰秒会怎么样?

不会怎么样——它把每一天都当成 86400 s,闰秒那一分钟被重复计数或摊平处理,时间戳本身不加不减。代价是 UTC 比 Unix 时间戳多走了已插入的正闰秒次数,截至 27 次就是多走 27 s = 27000000 us,跨闰秒做时长统计时要手动补。

儒略年和平时说的一年差多少?

儒略年按 365.25 天算,是 31557600.0 s;日常说的 365 天是 31536000 s,两者差 21600 s(6 小时),折成微秒是 21600000000 us。按年计费或折旧时先确认用哪个年。

1 微秒占一天的多大比例?

1 us ÷ 86400 s = 0.00000000001157,也就是约千亿分之一。这个比例常被用来判断某个精度要求是否现实:要在一天的时间跨度上分辨到微秒,需要约 12 位有效数字。

结果超过 9007199254740992 之后还准吗?

只保证前 15 位有效数字。本页用双精度浮点数,它能精确表示的整数上限是 2^53 = 9007199254740992;1000 天折成微秒已经是 86400000000000,超出这个上限,末几位不再精确。逐微秒对账请改用整数运算或大数库。

批量框里写「1天」为什么报错,写「1 d」就行?

单位必须逐字匹配九种之一:ns、us、ms、s、min、h、d、周、儒略年,大小写敏感。「1天」中间没有空格,无法切出数值与单位;写成「1 d」才能识别。周要写「周」字,儒略年要写「儒略年」三字。

这个工具免费吗?

免费,无需注册即可使用。

输入的数据安全吗?

安全。计算在当前浏览器本地完成,不会上传输入内容。

相关工具