2147483647

2147483647 Unix 时间戳

2147483647 = 2038-01-19 03:14:07 UTC

2147483647=2038-01-19 03:14:07 UTC
Unix seconds2147483647
Unix milliseconds2147483647000
ISO 8601 UTC2038-01-19T03:14:07.000Z
In code
JavaScript:  new Date(2147483647 * 1000).toISOString()
Python:      datetime.fromtimestamp(2147483647, tz=timezone.utc)
Linux:       date -u -d @2147483647
macOS:       date -u -r 2147483647

2147483647 是 2038-01-19 03:14:07 UTC

Unix 时间戳 2147483647 等于 2038-01-19T03:14:07.000Z(Tuesday, January 19, 2038, 03:14:07 UTC)。该值是自 Unix 纪元(1970-01-01 00:00:00 UTC)以来经过的秒数。

秒与毫秒

2147483647 是 Unix 秒。JavaScript、Java 和若干数据库驱动则期望 Unix 毫秒——同一时刻,值 × 1000。

  • Unix 秒:2147483647
  • Unix 毫秒:2147483647000
  • ISO 8601 UTC: 2038-01-19T03:14:07.000Z
  • 年内日序 2038: 19

本地时区对应值

2147483647 是单一时刻;钟表上的日期和时间因时区而异。

  • UTC: 2038-01-19 03:14:07
  • America/New_York: 2038-01-18 22:14:07
  • America/Los_Angeles: 2038-01-18 19:14:07
  • Europe/London: 2038-01-19 03:14:07
  • Europe/Berlin: 2038-01-19 04:14:07
  • Asia/Shanghai: 2038-01-19 11:14:07
  • Asia/Tokyo: 2038-01-19 12:14:07
  • Australia/Sydney: 2038-01-19 14:14:07

在代码中转换

针对最常被问到的语言的单行代码。对 JavaScript Date 乘以 1000。

  • JavaScript: new Date(2147483647 * 1000).toISOString() → "2038-01-19T03:14:07.000Z"
  • JavaScript (ms form): new Date(2147483647000).toISOString()
  • Python: datetime.fromtimestamp(2147483647, tz=timezone.utc)
  • Python ISO: datetime.fromtimestamp(2147483647, tz=timezone.utc).isoformat()
  • Linux: date -u -d @2147483647
  • macOS: date -u -r 2147483647
  • Go: time.Unix(2147483647, 0).UTC()
  • SQL (PostgreSQL): SELECT to_timestamp(2147483647) AT TIME ZONE 'UTC';
  • SQL (MySQL): SELECT FROM_UNIXTIME(2147483647);

常见错误:new Date(2147483647) in JavaScript

JavaScript 的 Date 构造函数接受毫秒。把秒值原样传入会让 Date 把它解释为 2,147,483,647 毫秒——仅在纪元之后几周。结果落在 1970 年初。

  • 正确: new Date(2147483647 * 1000) → 2038-01-19T03:14:07.000Z
  • 错误: new Date(2147483647) → 1970-01-25T20:31:23.647Z
  • 速记规则:10 位数字是秒;13 位数字是毫秒。

FAQ

Unix 时间戳 2147483647 是什么日期?
2147483647 以 Unix 秒计是 2038-01-19T03:14:07.000Z(Tuesday, January 19, 2038, 03:14:07 UTC)。
2147483647 用毫秒是多少?
2147483647000 毫秒是同一时刻——JavaScript Date 和 Java Instant 期望的形式。
为什么 new Date(2147483647) 显示 1970?
JavaScript Date 接受毫秒。把秒值当作毫秒会指向 1970 年初。请改用 new Date(2147483647 * 1000)。
2147483647 在 shell 中如何转换?
Linux: date -u -d @2147483647. macOS: date -u -r 2147483647. 两者都返回 UTC 日期。