ข้ามไปยังเนื้อหาหลัก
FreeOnlineTools Go
ไทย
คำอธิบาย

Unix Timestamp คืออะไร? คำอธิบายฉบับสมบูรณ์ของ Epoch Time

โดย FreeOnlineTools Team · อัปเดตเมื่อ 2026-09-02

ตอบด่วน

Unix timestamp คือวินาทีตั้งแต่ 1 มกราคม 1970, 00:00:00 UTC (Unix epoch) timezone-independent และเปรียบเทียบง่าย JavaScript ใช้ millisecond (13 หลัก); Unix และ API ส่วนใหญ่ใช้วินาที (10 หลัก) ใช้ Timestamp Converter ฟรีของเรา

การแนะนำ

Unix timestamp (Unix epoch time, POSIX time หรือ Unix time) คือวินาทีตั้งแต่ 1 มกราคม 1970, 00:00:00 UTC —ช่วงเวลาที่เรียก Unix epoch timestamp ใช้ใน OS, ฐานข้อมูล, log และ API เพราะ timezone-independent (UTC เสมอ) เปรียบเทียบง่าย และกระชับ แต่อ่านไม่ได้ —1693526400 ไร้ความหมายโดยไม่แปลง

ทีละขั้นตอน

  1. ทำความเข้าใจกับยุคของ Unix

    ยุค Unix คือวันที่ 1 มกราคม 1970, 00:00:00 Coordinated Universal Time (UTC) การประทับเวลา Unix คือการนับวินาทีจากช่วงเวลานี้ การประทับเวลาเชิงบวกเกิดขึ้นหลังยุค การประทับเวลาเชิงลบ (รองรับโดยบางระบบ) อยู่ข้างหน้า

  2. แยกแยะวินาทีจากมิลลิวินาที

    โดยทั่วไปการประทับเวลา Unix จะเป็นวินาที (10 หลัก ณ ปี 2026 เช่น 1693526400) Date.now() และ Date.getTime() ของ JavaScript ส่งคืนมิลลิวินาที (13 หลัก เช่น 1693526400000) ตรวจสอบเสมอว่า API คาดหวังหน่วยใด — การผสมหน่วยเหล่านี้เป็นข้อบกพร่องในการประทับเวลาที่พบบ่อยที่สุด

  3. ทำความเข้าใจความเป็นอิสระของเขตเวลา

    การประทับเวลา Unix จะเป็น UTC เสมอ พวกเขาไม่ได้ขึ้นอยู่กับเขตเวลาของผู้ใช้ หากต้องการแสดงการประทับเวลาในเขตเวลาที่เจาะจง ให้แปลงเป็นวันที่และใช้การชดเชยเขตเวลา ทำให้การประทับเวลาเหมาะสำหรับการจัดเก็บและการเปรียบเทียบ

  4. เรียนรู้เกี่ยวกับปัญหาปี 2038

    ระบบที่ใช้จำนวนเต็มที่ลงนามแบบ 32 บิตสำหรับการประทับเวลาจะล้นในวันที่ 19 มกราคม 2581, 03:14:07 UTC — 'ปัญหาปี 2038' ระบบที่ใช้จำนวนเต็ม 64 บิตหรือหมายเลข JavaScript (โฟลต 64 บิต) จะไม่ได้รับผลกระทบ ระบบสมัยใหม่ส่วนใหญ่ปลอดภัยในปี 2038 แต่ระบบฝังตัวแบบเดิมอาจไม่ปลอดภัย

ตัวอย่าง

การประทับเวลาสำหรับวันที่ทราบ

ป้อนข้อมูล: 2023-09-01 00:00:00 UTC

เอาท์พุต: 1693526400 (วินาที) หรือ 1693526400000 (มิลลิวินาที)

ยุคยูนิกซ์

ป้อนข้อมูล: 1970-01-01 00:00:00 UTC

เอาท์พุต: 0

ขอบเขตปัญหาปี 2038

ป้อนข้อมูล: 2038-01-19 03:14:07 UTC

เอาท์พุต: 2147483647 (จำนวนเต็มลงนามสูงสุด 32 บิต)

ปัญหาทั่วไป

  • การผสมวินาทีและมิลลิวินาที —JavaScript ใช้มิลลิวินาที (Date.now()) Unix และ APIs ส่วนใหญ่ใช้วินาที หารด้วย 1,000 เพื่อแปลง ms เป็นวินาที คูณด้วย 1,000 เพื่อย้อนกลับ
  • ความสับสนเกี่ยวกับเขตเวลา - การประทับเวลาคือ UTC เมื่อแสดง ให้แปลงเป็นเขตเวลาท้องถิ่นของผู้ใช้หรือระบุ UTC อย่าใช้การชดเชยกับการประทับเวลาดิบ
  • ปัญหาปี 2038 —การประทับเวลาจำนวนเต็มแบบ 32 บิตล้นในวันที่ 2038-01-19 ใช้จำนวนเต็ม 64 บิตหรือตัวเลข JavaScript เพื่อหลีกเลี่ยงปัญหานี้
  • การประทับเวลาเชิงลบ —วันที่ก่อน 1970-01-01 มีการประทับเวลาเชิงลบ บางระบบไม่รองรับ

เคล็ดลับ

  • ตรวจสอบเสมอว่า API คาดว่าจะเป็นวินาทีหรือมิลลิวินาที ซึ่งเป็นข้อผิดพลาดในการประทับเวลาที่พบบ่อยที่สุด
  • ใช้สตริง ISO 8601 (เช่น "2023-09-01T00:00:00Z") สำหรับการประทับเวลาที่มนุษย์อ่านได้ใน APIs; ใช้ Unix epoch สำหรับการจัดเก็บและการคำนวณ
  • JavaScript Date.now() ส่งกลับค่ามิลลิวินาที; หารด้วย 1,000 และพื้นเพื่อให้ได้วินาที
  • ใช้ Timestamp Converter ของเราเพื่อแปลงระหว่างการประทับเวลากับวันที่ที่มนุษย์อ่านได้ในเบราว์เซอร์ของคุณ

เครื่องมือที่เกี่ยวข้อง

คำแนะนำที่เกี่ยวข้อง

อ้างอิง