在线时间戳转换工具

Unix 时间戳与日期时间双向转换,自动识别秒(10 位)/ 毫秒(13 位),支持本地时区与 UTC 显示。所有转换在浏览器本地完成。

⏱ 当前时间戳(每秒自动刷新)

-
秒级(10 位)
-
毫秒级(13 位)
-
当前本地时间

时间戳 → 日期

日期 → 时间戳

时间戳转换工具使用说明

在后端日志、数据库记录、API 响应中,时间几乎都以 Unix 时间戳的形式存储。时间戳对人并不友好——你很难心算出 1693555200 是哪天几点。本工具提供两个方向的转换:

  • 时间戳 → 日期:输入任意时间戳(10 位秒值或 13 位毫秒值会自动识别),一键得到对应的本地时间、UTC 时间以及 ISO 8601 标准格式。
  • 日期 → 时间戳:通过日期时间选择器选择具体时刻,得到对应的秒级和毫秒级时间戳。
  • 实时当前时间戳:页面顶部的三个数字每秒刷新,写测试用例或生成日志时可以直接复制。

所有计算使用浏览器内置的 Date 对象完成,时区取自你的操作系统设置,数据不经过任何网络请求。

常见问题(FAQ)

什么是 Unix 时间戳?
Unix 时间戳是从 1970 年 1 月 1 日 00:00:00 UTC(称为 Unix 纪元,Epoch)到某一时刻所经过的秒数(或毫秒数),是计算机系统中表示时间的通用方式。它是一个不断递增的整数,因此非常适合用于排序和计算时间差。
10 位和 13 位时间戳有什么区别?
10 位时间戳以秒为单位,13 位以毫秒为单位。JavaScript 的 Date.now() 返回 13 位毫秒值,而多数后端语言(如 Python 的 time.time()、Go、Java 常用写法)使用 10 位秒值。本工具通过位数自动判断,无需手动选择。
时间戳与时区有什么关系?
时间戳本身是一个绝对时刻,与时区无关。同一个时间戳在北京(UTC+8)和纽约(UTC-5)会显示不同的"本地时间",但它们代表的是同一瞬间。因此跨时区协作时,用时间戳传递时间是最安全的做法。
为什么 1970 年之前的时间是负数?
Unix 纪元定义了 0 点,比它更早的时刻用负数表示。例如 -86400 表示 1969 年 12 月 31 日 00:00:00 UTC。本工具同样支持负数时间戳的转换。
2038 年问题是什么?
早期系统用 32 位有符号整数存秒级时间戳,最大值是 2147483647,对应 2038 年 1 月 19 日 03:14:07 UTC,之后会溢出。现代 64 位系统已不受影响,但在维护老系统时需要注意这个问题。

相关知识:程序中如何处理时间戳

不同语言获取和转换时间戳的写法略有差异,这里列出最常见的几种:

JavaScript  Date.now()                    // 毫秒
Python      import time; time.time()       // 秒(浮点)
Java        System.currentTimeMillis()     // 毫秒
Go          time.Now().Unix()              // 秒
MySQL       UNIX_TIMESTAMP(NOW())          // 秒

一个容易踩的坑是:把毫秒时间戳当作秒传给后端(或反过来),结果时间差出 1000 倍——表现为日期变成了 1970 年附近。遇到"转换出来是 1970 年"的情况,先检查单位是否搞错。如果你还需要把转换结果格式化为其他格式,可以配合 JSON 格式化 工具一起处理接口数据。

🍪 隐私提示 我们仅收集提供服务所必需的信息(详见《隐私政策》),不出售、不追踪。