编码解码哈希加密格式化时间转换开发生成文本处理网络工具其他工具
首页 / 名词解释 / Unix 时间戳

Unix 时间戳

Unix 时间戳(Unix timestamp,又称纪元时间、Epoch time)是一个整数,表示从 1970-01-01 00:00:00 UTC(称为「Unix 纪元」)到某一时刻所经过的秒数,且不计入闰秒。例如 0 代表纪元起点,1700000000 对应 2023 年 11 月中旬。它是计算机内部记录时间最常用的方式:一个纯数字,便于存储、比较和做差值运算。

它最大的特点是时区无关:同一瞬间在全球任何地方对应的时间戳都相同,时区只在把时间戳转换成「年月日时分秒」这种人类可读格式时才起作用。因此后端存储、接口传输时通常直接用时间戳,展示层再按用户所在时区渲染。

使用中需注意几个要点:

常见问题

Unix 时间戳的单位是秒还是毫秒?
标准 Unix 时间戳单位是秒,为 10 位数字。但 JavaScript、Java 等语言的 API 常返回毫秒(13 位),使用前先看数字位数或语言约定,避免相差一千倍。
同一时刻在不同时区,时间戳会不一样吗?
不会。时间戳表示的是一个绝对瞬间,全球都相同,本身不含时区信息。时区只影响把它转成「年月日时分秒」时显示成几点,转换时需显式指定目标时区。
什么是 2038 年问题?
早期系统用 32 位有符号整数存秒数,最大只能表示到 2038-01-19 03:14:07 UTC,之后会溢出变成负数。改用 64 位整数存储即可彻底避免。

相关工具

相关名词