历历典 万年历 · 农历公历对照
—当前秒级时间戳 · 实时走秒2026年10月21日 星期三

时间戳 → 北京时间

输入时间戳,回车或点「转换」即可换算成北京时间。

北京时间 → 时间戳

选好日期时间,点「换算」得到对应时间戳。

常用时间戳速查(2026年10月21日 当日)

零点均指北京时间 00:00:00;点「复制」即可把秒级时间戳复制走。

时点(北京时间)日期秒级时间戳毫秒级时间戳
今天零点10月21日 星期三17925120001792512000000
昨天零点10月20日 星期二17924256001792425600000
明天零点10月22日 星期四17925984001792598400000
本周一零点10月19日 星期一17923392001792339200000
本月 1 日零点10月1日 星期四17907840001790784000000
今年 1 月 1 日零点1月1日 星期四17671968001767196800000

时间戳与北京时间怎么换算

时间戳是「自 1970 年 1 月 1 日 00:00:00 UTC 起经过的秒数」,与 时区无关。北京时间比 UTC 早 8 小时,所以换算口诀是:时间戳加 8 小时,再按普通日期读数;反向换算先减 8 小时。北京 1970-01-01 08:00:00 对应时间戳 0。

// 秒级 → 北京时间:先加 8 小时偏移
new Date((1789000000 + 28800) * 1000).toISOString()
// 毫秒级时间戳 = 秒级 × 1000

工程里最常见的坑就是秒与毫秒混用:页面拿到 13 位数字直接当秒用,日期会跑到公元五万年。分辨方法很简单——数位数:10 位是秒,13 位是毫秒;转换前先看一眼再乘除 1000。

从1970年Unix纪元到2038年的时间轴示意
Unix 纪元与 2038 上限
同一时刻的10位秒级与13位毫秒级时间戳对照示意
10 位与 13 位差一千倍
北京时间与UTC相差八小时示意
北京时间 = UTC + 8

常见问题

时间戳是什么?
时间戳(Unix timestamp)是从「Unix 纪元」1970 年 1 月 1 日 00:00:00 UTC 起到某一时刻经过的秒数,与任何时区无关,是计算机世界通用的记时方式。北京时间比 UTC 早 8 小时,所以北京时间 1970 年 1 月 1 日 08:00:00 的时间戳正好是 0。
10 位和 13 位时间戳有什么区别?
10 位是「秒级」时间戳,13 位是「毫秒级」,数值上正好差 1000 倍。Java、JavaScript 的 Date.now() 默认给毫秒,PHP 的 time()、Shell 的 date +%s 给秒。本页按位数自动识别,12 位以下按秒、13 位以上按毫秒处理。
为什么 1970 年之前的时间戳是负数?
Unix 纪元定在 1970 年,之前的时间用负数表示。历史研究、家谱、古籍历法推算时同样可以用时间戳,只要系统支持 64 位整数即可。
2038 年问题是什么?
早期系统用 32 位有符号整数存秒级时间戳,最大值是 2147483647,对应北京时间 2038 年 1 月 19 日 03:14:07,再往后就会溢出错乱。现代 64 位系统已不受影响,但一些老设备、旧协议仍需在 2038 年前完成升级。
时间戳会受夏令时影响吗?
不会。时间戳是 UTC 秒数,本身没有时区概念;同一个时间戳换算到北京、纽约、伦敦各有各的当地时间。中国不实行夏令时,北京时间与时间戳的换算全年固定加 8 小时。
两个时间戳相减得到什么?
得到两点之间经过的秒数,除以 86400 是天数(注意这是 24 小时制的「整天」,与历法日的跨天不完全一样)。本站「日期计算器」按历法日计算区间,两个口径不要混用。

相关工具