看日志、调接口,经常遇到 1716800000 这样一串数字。它不是乱码,而是"时间戳"——记录从某一刻起过去了多少秒。
一、时间戳是什么
Unix 时间戳,就是从 1970 年 1 月 1 日 00:00:00(UTC)起,到现在经过的秒数。全世界用同一个起点,所以不管什么时区,这个数字都一样,方便机器存储和比对。
二、为什么是 1970 年
Unix 系统诞生于那个年代,工程师就顺手把这个时间点定为"纪元(Epoch)"。如今它成了计算机界的通用约定。
三、秒还是毫秒?这是个坑
- 10 位数字:秒级时间戳,后端、Linux 常用;
- 13 位数字:毫秒级时间戳,JavaScript 的
Date.now()返回的就是它。
把毫秒当秒用,日期会跑到几万年后;反过来则会回到 1970 年附近。转换时先看位数。
💡 快速心算:10 位时间戳的大致年份 ≈ 1970 + 前两位对应的年数。更省事的办法是直接用在线时间戳转换,秒/毫秒自动识别。
四、怎么转换
打开 时间戳转换工具:粘贴时间戳 → 立刻得到年-月-日 时:分:秒;也可以反过来把日期转成时间戳,支持多时区显示。
五、常见问题
Q:2038 年会出问题吗?
32 位系统的时间戳上限在 2038 年 1 月 19 日,现代 64 位系统已无此担忧。
Q:时间戳会变吗?
同一个时刻的时间戳是固定的,不会变。
广告位
此处为广告展示区,站点主粘贴发布商 ID 后自动展示。
此处为广告展示区,站点主粘贴发布商 ID 后自动展示。