返回博客
timestamp 2025-01-13

Unix 时间戳完整指南

关于 Unix 时间戳和时间处理的所有知识。

Unix 时间戳是一种将时间作为累计秒数来跟踪的方法。

什么是 Unix 时间戳?

Unix 时间戳(也称为 Epoch 时间)是自 1970 年 1 月 1 日 00:00:00 UTC 以来经过的秒数。

当前时间戳: 当您阅读本文时,它大概在 1700000000+ 左右。

为什么使用 Unix 时间戳?

1. 通用性: 无论时区如何,值都相同

2. 简单: 只是一个数字,易于存储和比较

3. 精确: 可以包含毫秒

4. 可排序: 数字自然排序

常见转换

JavaScript

// 当前时间戳(秒)

Math.floor(Date.now() / 1000)

// 当前时间戳(毫秒)

Date.now()

// 时间戳转 Date

new Date(timestamp * 1000)

// Date 转时间戳

Math.floor(date.getTime() / 1000)

Python

import time

from datetime import datetime

当前时间戳

time.time()

时间戳转 datetime

datetime.fromtimestamp(timestamp)

datetime 转时间戳

datetime.timestamp(dt)

2038 年问题

32 位系统将时间戳存储为有符号 32 位整数。最大值(2,147,483,647)表示 2038 年 1 月 19 日 03:14:07 UTC。

解决方案: 使用 64 位时间戳

毫秒 vs 秒

  • Unix 时间戳: 秒(10 位数字)
  • JavaScript Date.now(): 毫秒(13 位数字)

始终检查您的 API 或数据库期望哪种格式。

使用我们的时间戳转换器轻松转换格式。