Glyph WidgetsGlyph Widgets
工具关于联系博客隐私条款移除广告在Ko-fi上支持

© 2026 Glyph Widgets LLC. 保留所有权利。

·

100% 客户端处理

返回博客

Unix Timestamp Converter:Epoch 与日期互转

将 Unix Epoch 时间戳转换为可读日期,反向同样支持。涵盖秒、毫秒、ISO 8601、UTC 与本地时间。

Glyph Widgets
2026年2月27日
阅读 9 分钟
Unix 时间戳转换器Epoch 转换器时间戳转日期日期转时间戳Unix 时间

什么是 Unix Timestamp Converter?

每当服务器日志或数据库记录给我一个像 1700000000 这样的裸整数,而我想知道它对应的 UTC 时刻时,我就会用这个工具。粘贴一个秒或毫秒级的时间戳,就能在一张表格里看到 ISO 8601、UTC、本地时间以及相对字符串(“3 天前”)。或者从日期选择器中挑一个日期,反向得到时间戳。页面底部的实时计数器每秒刷新一次当前 Unix 时间戳。

主要功能

转换器双向工作:粘贴一个 Unix 时间戳,会得到 ISO 8601、UTC、本地时间、相对时间,以及秒和毫秒两种表达形式并排展示,每一行都自带复制按钮。或者用 datetime-local 选择器挑选日期与时间,时间戳会立即以秒和毫秒同时呈现。

秒还是毫秒由自动判别处理。10 位及以下的输入按秒读取,11 位及以上按毫秒。1740000000 被解读为秒(2025 年 2 月),而 1740000000000 表示同一时刻的毫秒形式。JavaScript 的 Date.now()(13 位)和 Java 的 System.currentTimeMillis() 都会被正确识别,无需切换模式。

页面底部的固定卡片同时显示当前 Unix 时间戳的秒值和毫秒值,每秒更新,并提供一键复制。

如何使用 Unix Timestamp Converter

左侧标注为 “Unix Timestamp” 的输入框只接受数字和起始负号(用于 1970 年 1 月 1 日之前的日期)。输入或粘贴 1740700800 这样的值后,每次按键都会触发转换,无需提交按钮。非数字字符会被自动剔除。

反向操作时使用右侧的 datetime-local 选择器。挑选日期与时间后,左侧字段会填入对应的 Unix 时间戳(秒)。两个字段保持同步——编辑其中一个会更新另一个。

“Use Now” 按钮读取 Date.now() 除以 1,000(向下取整为秒),并填入时间戳字段。当输入合法的时间戳或日期时,会出现一张包含六行的结果表:

格式示例输出
ISO 86012025-02-28T00:00:00.000Z
UTCFri, 28 Feb 2025 00:00:00 GMT
本地时间2025/2/28 19:00:00(因 locale 而异)
相对时间2 天前
时间戳(秒)1740700800
时间戳(毫秒)1740700800000

每行都有复制按钮,点击后会出现 “Copied to clipboard” 提示。转换区下方的实时计数卡片每秒更新当前的秒值和毫秒值,并为秒值提供独立的复制按钮。

实际示例

解读一条 API 日志的时间戳

服务器日志显示 "created_at": 1700000000。把 1700000000 粘贴到时间戳字段里。工具检测到 10 位,按秒处理。结果:ISO 2023-11-14T22:13:20.000Z,相对时间 “14 个月前”。无需心算。

转换 JavaScript 的 Date.now() 值

某个 JavaScript 应用返回 1740700800000 这样的 13 位值。粘贴进去。工具识别为毫秒,并把同一时刻的 10 位秒值 1740700800 一并显示,两种格式并排。

为 API 调用准备一个 Unix 时间戳

需要一个 Unix 时间戳对应 2026 年 3 月 1 日 UTC 零点。在日期选择器里选 2026-03-01T00:00,时间戳字段会显示 1740787200。把结果中的秒值复制到 API 请求里即可。

小贴士与最佳做法

  • 自动判别阈值是 10 位。恰好 10 位始终按秒处理,覆盖 2001 年 9 月 9 日到 2286 年 11 月 20 日之间的所有日期。来自 JavaScript 或 Java 的毫秒时间戳落在 13 位区间,会被正确识别。
  • 通过起始负号支持负数时间戳。-86400 对应 1969 年 12 月 31 日 00:00:00 UTC,比 Unix 纪元早一天。
  • 相对时间使用近似阈值:不足 60 秒 → “X 秒前 / X 秒后”;不足 60 分钟 → “X 分钟”;不足 24 小时 → “X 小时”;不足 7 天 → “X 天”;不足 4 周 → “X 周”;不足 12 个月 → “X 个月”;其余 → “X 年”。
  • 共享 URL 功能会把当前时间戳编码到查询字符串里。把 URL 发出去后,对方会看到同样的时间戳被预先加载——很适合让同事看到日志中的某个时刻。
  • 点击 “Clear” 会清空两个输入框并隐藏结果表,无需刷新页面。

常见问题与排查

输入时间戳之后结果表没有出现。 转换器使用 parseInt(value, 10) 解析输入。如果值里含有字母、点或冒号,parseInt 可能返回 NaN,结果就会被隐藏。请只粘贴纯数字;输入框会自动剔除起始负号以外的非数字字符。

时间戳被转成了意料之外的日期。 检查单位。1740000000 这样的 10 位值会按秒处理(2025 年)。如果你的系统输出的是毫秒(13 位),同样的前缀需要追加三个零——1740000000000——才能正确解释。

本地时间格式看起来不对。 “本地时间” 行使用 date.toLocaleString(),遵循设备的 locale 与时区。日月顺序与预期不符通常反映的是操作系统的区域设置,而不是转换错误。

日期输入旁的复制按钮没有反应。 该按钮在未选择日期时被禁用(disabled={!dateInput})。先选一个日期。

“Use Now” 的结果与预期不符。 “Use Now” 把 Date.now() 向下取整到秒。基于秒的时间戳会有意丢弃毫秒精度。下方的实时计数卡片会同时显示秒值与毫秒值,便于在需要毫秒精度时使用。

隐私与安全

所有转换都在浏览器的 JavaScript 运行时中完成。时间戳、日期或查询参数不会被传输到任何服务器。共享 URL 功能将时间戳编码为客户端 URL 参数——只有你发送 URL 的对象才能看到。页面加载后即可离线使用,因此处理来自内部系统或敏感应用日志的时间戳时也很稳妥。

常见问答

Unix 时间戳是什么? Unix 时间戳是从 1970 年 1 月 1 日 00:00:00 UTC(即 Unix 纪元)开始经过的秒数(或毫秒数)。它是一个与时区无关的整数,便于存储、比较与传输,因而在编程语言、数据库和 API 中广泛使用。

秒/毫秒自动判别是如何工作的? 工具会检查输入长度。长度不超过 10 个字符的值会先乘以 1,000,再创建 Date 对象;11 个及以上字符的值则直接当作毫秒。10 位的边界覆盖到 2286 年之前的所有秒级精度时间戳。

ISO 8601 格式长什么样? ISO 8601 是日期和时间的国际标准。输出使用完整形式 YYYY-MM-DDTHH:mm:ss.sssZ,其中 Z 表示 UTC。示例:2025-02-28T12:00:00.000Z 表示 2025 年 2 月 28 日中午(UTC)。

能否转换 1970 年 1 月 1 日之前的日期? 可以。用负号前缀输入负数时间戳(例如 1969 年 12 月 31 日为 -86400)。多数浏览器的 datetime-local 选择器也接受 1970 年之前的年份,会生成负的 Unix 时间戳。

相对时间格式以什么为参照? 相对时间会把转换后的日期与转换那一刻的 new Date() 进行比较,差值用最合适的最大单位表示:秒、分钟、小时、天、周、月或年——过去用 “前”,未来用 “后”。

怎么获取当前的 Unix 时间戳? 点击 “Use Now” 把它载入转换器,或者直接看页面底部的实时计数卡片。该计数器同时显示秒值(10 位)和毫秒值(13 位),每秒刷新。“Copy Current (seconds)” 直接复制秒值。

工具是否能正确处理时区偏移? UTC 与 ISO 8601 输出始终以 UTC(偏移 +00:00)表示。“本地时间” 行通过 toLocaleString() 应用浏览器的时区。datetime-local 输入表示你的本地时间,工具会先将其转换为 UTC 再计算 Unix 时间戳。

相关工具

  • 即将推出: 日期计算器 — 计算两个日期之间的差值(年、月、周、日),或统计两个日期之间的工作日。
  • 即将推出: 世界时钟 — 查看 50 多个城市的当前时间,了解某个 UTC 时间戳在不同地区的本地时间。
  • 即将推出: 计时器套件 — 在以时间戳为核心的开发任务中,用秒表和倒计时测量时间间隔。

立即试用 Unix Timestamp Converter:即将推出: Glyph Widgets Unix Timestamp Converter

最后更新:2026年2月27日

继续阅读

更多文章试用 Unix Timestamp Converter