Chuyển đổi giữa Unix timestamp và ngày tháng
Giải thích epoch time cho lập trình viên và người tò mò
Unix timestamp (còn gọi là epoch time) là số giây đã trôi qua kể từ 00:00:00 UTC ngày 1 tháng 1 năm 1970 — thời điểm được gọi là Unix epoch. Đây là cách phổ biến nhất để biểu diễn một thời điểm trong tin học. Vì sao là năm 1970? Hệ điều hành Unix được phát triển vào cuối những năm 1960 và đầu những năm 1970. Ngày 1 tháng 1 năm 1970 được chọn làm mốc tham chiếu thuận tiện — một ngày gần với thời điểm đó và cho phép một phạm vi sử dụng dài. Mili giây hay giây: JavaScript dùng mili giây (nhân số giây với 1000), trong khi các lệnh Unix/Linux và hầu hết cơ sở dữ liệu dùng giây. Khi làm việc với timestamp, hãy luôn xác nhận đơn vị cần dùng — đây là nguồn lỗi rất phổ biến. Sự cố năm 2038: Các hệ thống 32-bit lưu Unix timestamp dưới dạng số nguyên có dấu, đạt giá trị tối đa vào 03:14:07 UTC ngày 19 tháng 1 năm 2038. Các hệ thống 64-bit hiện đại không gặp vấn đề này và có thể biểu diễn các ngày ở hàng tỷ năm trong tương lai. Ứng dụng phổ biến: phản hồi API, bản ghi cơ sở dữ liệu, file log, thời gian sửa đổi file, token xác thực (thời hạn JWT), header bộ nhớ đệm và bất cứ nơi nào cần một định dạng thời gian không phụ thuộc ngôn ngữ.
Các công cụ hữu ích khác về tính ngày và giờ
Unix timestamp là gì? Số giây tính từ 00:00:00 UTC ngày 1 tháng 1 năm 1970. Được sử dụng rộng rãi trong lập trình.
Timestamp → ngày giờ và ngày giờ → timestamp
Lấy ngay giá trị timestamp hiện tại
Chuyển đổi chính xác đến giờ và phút
Dùng cho API, cơ sở dữ liệu và phân tích log
Về Unix timestamp
Là số giây tính từ 00:00:00 UTC ngày 1 tháng 1 năm 1970 (Unix epoch).
Để lưu thời gian độc lập với múi giờ. Thường được dùng trong API, cơ sở dữ liệu và giao tiếp giữa các hệ thống.
Có, timestamp âm được dùng cho các ngày trước 1 tháng 1 năm 1970.
Trên các hệ thống 32-bit, timestamp sẽ bị tràn vào ngày 19 tháng 1 năm 2038. Hệ thống 64-bit giải quyết được vấn đề này.
Unix timestamp tính bằng giây, còn Date.now() của JavaScript trả về mili giây. Chia cho 1000 để đổi mili giây sang giây.