广民广民
工具实现揭秘开发工具

时间戳转换是怎么实现的

秒/毫秒自动识别、双向互转与 1970 年前时间——一个工具吃透 Unix 时间

TL;DR:时间戳转换做 Unix 时间戳 ↔ 北京时间的双向互转:10 位秒级、13 位毫秒级自动识别,支持由日期时间反推时间戳,一键取当前时间。转换全部在浏览器本地完成,支持 1970 年前的时间戳。

⏱️ 30 秒上手

  1. 打开 tools.guangmin.top/tools/timestamp_convert;
  2. 粘贴时间戳(如 1600000000),自动显示对应北京时间与毫秒值;
  3. 反向:输入日期时间(如 2026-11-01 14:00:00),实时给出时间戳;
  4. 点「取当前时间」快速拿到现在的时间戳。

🔧 它是怎么实现的

三个实现要点:

  1. 位数识别的经验规则:10 位数字是秒(当前纪元约 1.7×10⁹ 秒),13 位是毫秒。工具按位数自动选择解析方式——不用你先想「我这是秒还是毫秒」,这是把「文档要读的东西」变成「工具替你判断」的典型交互降级;
  2. 时区处理只有一行哲学:Unix 时间戳本身无时区(自 1970-01-01 UTC 起的秒数),一切「时区问题」都发生在展示层。工具统一按 UTC+8(北京时间)格式化输出,输入的日期时间也按北京时间解析——与服务器时区无关,在哪台电脑上结果一致;
  3. 1970 年前的时间戳:负数时间戳(1970-01-01 之前的日期)同样支持——历史数据、生日字段偶尔会用到,new Date(-86400) 这类值原生 Date 对象直接处理。

📏 边界与限制

项说明
识别范围10 位秒 / 13 位毫秒自动识别;其他位数给出纠错提示
时区输入输出统一按北京时间(UTC+8)
精度秒/毫秒双粒度输出

🔗 延伸阅读