Unix Timestamp Converter

Chuyển đổi Unix Timestamp

Chuyển bất kỳ Unix timestamp nào (giây hoặc mili giây) sang ngày giờ dễ đọc — hoặc ngược lại — ngay lập tức. ISO 8601, RFC 2822, UTC, giờ địa phương và 10+ múi giờ trong cùng một khung nhìn.

Unix timestamp (còn gọi là "Unix time" hay "epoch time") là số giây đã trôi qua kể từ 00:00:00 UTC ngày Thứ Năm, 1 tháng 1 năm 1970, không tính giây nhuận. Đây là định dạng thời gian phổ quát dùng trong cơ sở dữ liệu, file log, API và cookie. Số 10 chữ số là giây (sẽ chuyển sang 11 chữ số vào năm 2286); số 13 chữ số là mili giây.

Hầu hết công cụ Unix (curl, date, syslog, claim exp/iat của JWT) dùng giây. Date.now của JavaScript trả về mili giây. Java, Kotlin và nhiều web API dùng mili giây. Nếu số của bạn hôm nay khoảng 10 chữ số thì là giây. Nếu 13 chữ số thì là mili giây. iKit tự nhận biết theo số chữ số, nhưng bạn vẫn có thể ép đơn vị bằng các nút radio.

Unix time hiện tại (cập nhật trực tiếp)
giây
mili giây
Đơn vị

ISO 8601 (UTC)

Đồng hồ UTC

Giờ địa phương

Y-M-D H:M:S địa phương

RFC 2822 / HTTP

So với hiện tại

Thứ trong tuần

Cùng thời điểm tại các múi giờ chính

Vì sao chọn iKit Unix Timestamp Converter

Được thiết kế cho lập trình viên đang debug log, API và timestamp trong cơ sở dữ liệu — không cần đăng ký, không upload, không có bên thứ ba xen giữa bạn và dữ liệu.

Epoch hiện tại trực tiếp

Unix time hiện tại được cập nhật mỗi giây ở đầu trang theo cả giây và mili giây. Sao chép một chạm cho cả hai định dạng.

Tự nhận biết giây hay mili giây

Dán số nguyên bất kỳ — 10 chữ số được coi là giây, 13 chữ số là mili giây, 16 chữ số là micro giây. Bạn có thể ghi đè thủ công bằng nút chọn đơn vị khi cần.

Mọi định dạng đầu ra phổ biến

ISO 8601, RFC 2822, đồng hồ UTC, giờ địa phương và Y-M-D H:M:S trong cùng một khung. Kèm thứ trong tuần và khoảng thời gian tương đối dễ đọc ("2 giờ trước").

10+ múi giờ trong nháy mắt

Xem cùng một thời điểm tại UTC, New York, LA, London, Paris, Tokyo, Thượng Hải, Đài Bắc, Kolkata và Sydney — hữu ích khi xử lý sự cố liên nhóm và API toàn cầu.

Chuyển đổi hai chiều

Chuyển sang chế độ Ngày → Timestamp để gõ "Jan 15 2024 10:30 UTC" hoặc chọn từ ô nhập ngày-giờ, lấy ngay Unix timestamp ở giây và mili giây.

Riêng tư theo thiết kế

Mọi thứ chạy bằng JavaScript đã tải sẵn trong tab trình duyệt của bạn. Có thể kiểm chứng tại DevTools → Network: không fetch, không XHR, không log. An toàn cho timestamp môi trường production.

Cách thức chuyển đổi Unix timestamp

Unix timestamp chỉ là một số nguyên — nhưng để biến nó thành ngày tháng cần khá nhiều chi tiết kỹ thuật.

  1. 1

    Chọn đơn vị

    Một Unix timestamp có thể tính bằng giây, mili giây, micro giây hoặc nano giây tùy nguồn. Việc đầu tiên là biết bạn đang có loại nào. iKit nhìn vào số chữ số: ~10 chữ số = giây, ~13 = ms, ~16 = µs. Bạn có thể ghi đè tự nhận biết bằng các nút radio đơn vị.

  2. 2

    Nhân lên thành mili giây

    Hàm tạo Date của JavaScript nhận mili giây, vì vậy ta nhân giây × 1000 (hoặc chia micro giây / 1000) để chuẩn hóa. Bên trong, Date lưu mili giây kể từ epoch dưới dạng số thực 64-bit — thừa sức cho mọi timestamp thực tế.

  3. 3

    Định dạng cho người đọc

    Khi đã có đối tượng Date, ta yêu cầu nó tự định dạng theo nhiều cách: toISOString cho ISO 8601 / UTC, toUTCString cho RFC 2822, toString cho múi giờ địa phương của người dùng, và Intl.DateTimeFormat cho bất kỳ múi giờ nào khác mà ta muốn hiển thị.

  4. 4

    Chiều ngược lại

    Khi đi theo chiều ngược lại, Date.parse của trình duyệt xử lý ISO 8601 và nhiều định dạng tự nhiên. Ô nhập datetime-local được hiểu theo múi giờ địa phương của người dùng. getTime trả về mili giây kể từ epoch; chia cho 1000 để ra giây.

Các tác vụ thường gặp với Unix timestamp

Những tình huống thực tế khi bạn cần đến công cụ chuyển đổi epoch.

Đọc claim exp / iat của JWT

JSON Web Token mã hóa iat (issued at) và exp (expires at) bằng giây Unix. Dán số vào để xem ngay token còn hợp lệ không, được phát hành khi nào và còn bao lâu nữa thì hết hạn.

Debug cột timestamp trong cơ sở dữ liệu

Postgres extract(epoch from now), MySQL UNIX_TIMESTAMP, MongoDB $toDate — tất cả đều trả về Unix epoch. Dán giá trị timestamp của một dòng để thấy thời gian thực tế ở các múi giờ khác nhau.

So sánh log từ các hệ thống khác nhau

Log ứng dụng theo UTC, syslog theo giờ địa phương, log của nhà cung cấp upstream theo PST. Hãy chuyển từng timestamp sang ISO 8601 ở đây, rồi bạn có thể xếp chúng đối khớp từng giây khi truy vết sự cố.

Tạo TTL cache hoặc thời hạn cookie

Chọn một ngày tương lai trong bộ chọn, sao chép Unix timestamp, dán vào header Set-Cookie, trường HTTP Expires hoặc cấu hình TTL cache. Không cần tính nhẩm, không lo lệch một múi giờ.

Vì sao việc chuyển đổi cục bộ lại quan trọng

Timestamp từ log production, ticket hỗ trợ khách hàng, audit trail hay dữ liệu test fixture nhìn thì có vẻ vô hại nhưng lại gắn với hành động người dùng và sự kiện hạ tầng. Dán chúng vào server của ai khác sẽ tạo ra dấu vết bạn không kiểm soát được. Bộ chuyển đổi của iKit chạy bằng JavaScript đã tải sẵn trong tab trình duyệt của bạn.

  • Không có request mạng nào trong khi chuyển đổi — kiểm chứng được tại DevTools → Network.
  • Mọi tính toán đều là số học Date thuần trong JavaScript. Không có analytics nào trên chính các timestamp.
  • An toàn cho timestamp database production, offset trong dòng log và mục audit trail.

Hướng dẫn liên quan

Hướng dẫn chi tiết và so sánh công cụ từ blog iKit.

Câu hỏi thường gặp

Unix timestamp là gì?

Unix timestamp (còn gọi là "Unix time" hay "epoch time") là số giây đã trôi qua kể từ 00:00:00 UTC ngày Thứ Năm, 1 tháng 1 năm 1970, không tính giây nhuận. Đây là định dạng thời gian phổ quát dùng trong cơ sở dữ liệu, file log, API và cookie. Số 10 chữ số là giây (sẽ chuyển sang 11 chữ số vào năm 2286); số 13 chữ số là mili giây.

Sự khác biệt giữa giây và mili giây là gì?

Hầu hết công cụ Unix (curl, date, syslog, claim exp/iat của JWT) dùng giây. Date.now của JavaScript trả về mili giây. Java, Kotlin và nhiều web API dùng mili giây. Nếu số của bạn hôm nay khoảng 10 chữ số thì là giây. Nếu 13 chữ số thì là mili giây. iKit tự nhận biết theo số chữ số, nhưng bạn vẫn có thể ép đơn vị bằng các nút radio.

Timestamp của tôi có bị tải lên đâu đó không?

Không. Toàn bộ công cụ là JavaScript chạy bên trong tab trình duyệt của bạn. Việc chuyển đổi chỉ là số học Date thuần — không fetch, không XHR, không beacon. Mở DevTools → Network và quan sát: không có request nào được phát ra khi bạn gõ. An toàn để dán timestamp từ log production, database staging hay ticket hỗ trợ khách hàng.

Làm sao chuyển đổi timestamp từ múi giờ khác?

Theo định nghĩa, Unix timestamp không gắn với múi giờ — nó là số giây kể từ epoch UTC. Sự khác biệt chỉ xuất hiện khi bạn hiển thị nó. Bộ chọn ngày ở phía Ngày → Timestamp dùng múi giờ địa phương của trình duyệt. Để nhập ngày ở múi giờ khác, hãy gõ dạng tự do với offset rõ ràng, ví dụ "2024-01-15 10:30:00 +09:00" hoặc "2024-01-15 10:30 UTC".

Còn vấn đề Year 2038 thì sao?

Unix timestamp 32-bit có dấu sẽ bị tràn vào ngày 19 tháng 1 năm 2038. iKit dùng kiểu Number của JavaScript (dải số nguyên an toàn 53-bit), nên xử lý được các ngày tận năm 275000 sau Công nguyên. Vấn đề Y2038 ảnh hưởng đến hệ thống chạy time_t 32-bit — phần lớn nhân OS hiện đại, cơ sở dữ liệu và ngôn ngữ đã chuyển sang time 64-bit, nhưng firmware nhúng cũ vẫn có thể gặp.