Bỏ qua đến nội dung chính
FreeOnlineTools Go
Tiếng Việt
Làm cách nào để

Cách Chuyển đổi Dấu thời gian Unix sang Ngày Đọc được

Bởi FreeOnlineTools Team · Đã cập nhật 2026-08-28

Trả lời nhanh

Unix timestamp = giây (hoặc mili-giây) từ 1970-01-01 00:00:00 UTC. Chuyển sang ngày bằng new Date(timestamp * 1000) trong JavaScript (giây) hoặc new Date(timestamp) (mili-giây). Dùng Timestamp Converter để làm cả hai ngay lập tức.

Giới thiệu

Unix timestamp (còn gọi epoch time hoặc POSIX time) là số giây từ 1970-01-01 00:00:00 UTC (Unix epoch), loại trừ leap second. Nó là lingua franca của thời gian trong computing vì là một integer đơn nhất timezone-independent và sortable tầm thường. Hầu hết hệ thống dùng giây; JavaScript và nhiều cơ sở dữ liệu dùng mili-giây.

Từng bước một

  1. Hiểu giây so với mili giây

    Hầu hết các hệ thống phụ trợ và APIs đều sử dụng giây (dấu thời gian gồm 10 chữ số cho đến 2286). Ngày của JavaScript và Instant sử dụng mili giây (13 chữ số). Luôn xác nhận đơn vị mà API mong đợi — việc trộn chúng sẽ làm thay đổi ngày theo hệ số 1000 (giảm ~31 năm).

  2. Chuyển đổi dấu thời gian thành ngày có thể đọc được

    Dán dấu thời gian vào Bộ chuyển đổi dấu thời gian. Nó phát hiện giây so với mili giây theo độ dài (10 so với 13 chữ số) và hiển thị ngày theo UTC và múi giờ địa phương của bạn. Trong mã: new Date(1700000000 * 1000).toISOString() trả về '2023-11-14T22:13:20.000Z'.

  3. Chuyển đổi ngày thành dấu thời gian

    Nhập ngày và giờ vào bộ chuyển đổi; nó trả về dấu thời gian Unix. Trong mã: Math.floor(new Date('2026-08-28T12:00:00Z').getTime() / 1000) trả về số giây kỷ nguyên. Luôn chỉ định múi giờ (Z hoặc độ lệch) để tránh sự mơ hồ về giờ địa phương.

  4. Xử lý múi giờ chính xác

    Dấu thời gian Unix luôn là UTC —chúng không có múi giờ. Chỉ chuyển đổi sang hiển thị cục bộ ở lớp trình bày. Không bao giờ lưu trữ giờ địa phương dưới dạng dấu thời gian; lưu trữ UTC và chuyển đổi trên màn hình. Sử dụng tên múi giờ IANA (America/New_York) với Intl.DateTimeFormat để xử lý DST chính xác.

  5. Tính toán sự khác biệt giữa các ngày

    Trừ hai dấu thời gian để có được sự khác biệt tính bằng giây (hoặc mili giây). Chia cho 60 cho phút, 3600 cho giờ, 86400 cho ngày. Sử dụng công cụ Chênh lệch Ngày của chúng tôi để biết phạm vi thân thiện với con người hoặc Công cụ tính Tuổi cho các độ tuổi dựa trên ngày sinh.

Ví dụ

Kỷ nguyên Unix

đầu vào: 0 (seconds)

đầu ra: 1970-01-01 00:00:00 UTC

Một tỷ giây sau kỷ nguyên

đầu vào: 1000000000 (seconds)

đầu ra: 2001-09-09 01:46:40 UTC

Bắt đầu năm 2026 theo giờ UTC

đầu vào: 2026-01-01T00:00:00Z

đầu ra: 1767225600 (giây) / 1767225600000 (mili giây)

Sự khác biệt giữa hai ngày

đầu vào: 1767225600 - 1700000000

đầu ra: 67225600 seconds = 778.08 days ≥2 years 31 days

Các vấn đề thường gặp

  • Nhầm lẫn giữa giây và mili giây: dấu thời gian gồm 10 chữ số được đọc dưới dạng mili giây cho biết ngày vào năm 1970; dấu thời gian 13 chữ số được đọc khi giây vượt quá int 32 bit. Phát hiện đơn vị bằng cách đếm chữ số hoặc ghi lại đơn vị đó một cách rõ ràng trong API.
  • Lưu trữ giờ địa phương dưới dạng dấu thời gian: dấu thời gian là UTC. Nếu bạn tính toán Date.now() trong trình duyệt được đặt thành UTC-5 và coi kết quả là cục bộ, quá trình chuyển đổi DST sẽ dịch chuyển dữ liệu của bạn một giờ hai lần một năm.
  • Tràn 32-bit vào ngày 19-01-2038 03:14:07 UTC (Y2038): các hệ thống sử dụng dấu thời gian 32-bit giây đã ký không thể biểu thị các ngày sau thời điểm này. Sử dụng dấu thời gian 64 bit hoặc mili giây trong các hệ thống mới.
  • Giây nhuận bị bỏ qua: Dấu thời gian Unix bỏ qua giây nhuận, do đó sự khác biệt giữa hai dấu thời gian không bằng số giây SI đã trôi qua. Hầu hết các ứng dụng có thể bỏ qua điều này; thiên văn học và tài chính có độ chính xác cao không thể làm được.

Mẹo

  • Luôn lưu trữ và truyền dấu thời gian trong UTC; chỉ chuyển đổi sang giờ địa phương ở lớp hiển thị bằng Intl.DateTimeFormat với múi giờ IANA.
  • Sử dụng chuỗi ISO 8601 (ví dụ: 2026-08-28T12:00:00Z) để con người có thể đọc được APIs và dấu thời gian để lưu trữ —Chuỗi ISO mang múi giờ của chúng một cách rõ ràng và rõ ràng.
  • Khi so sánh dấu thời gian, hãy sử dụng cùng một đơn vị (giây hoặc mili giây) ở cả hai bên — đơn vị không khớp là một trong những lỗi ngày phổ biến nhất.
  • Sử dụng Trình chuyển đổi dấu thời gian của chúng tôi để kiểm tra chính xác các phản hồi API trong quá trình gỡ lỗi —nó hiển thị cả UTC và giờ địa phương để bạn có thể phát hiện lỗi múi giờ ngay lập tức.

Công cụ liên quan

Hướng dẫn liên quan

Tài liệu tham khảo