tomai
लॉग इन

Unix टाइमस्टैंप: चार जाल जो आपकी तारीखें तोड़ते हैं

Unix टाइमस्टैंप सिर्फ 1970-01-01 UTC से अब तक के सेकंडों की गिनती है। आसान — फिर भी टाइमस्टैंप किसी और फ़ॉर्मैट से ज़्यादा डेट बग बनाते हैं। चार जाल ज़्यादातर मामलों को समझाते हैं।

1. सेकंड vs मिलीसेकंड

JavaScript का Date.now() मिलीसेकंड देता है; क्लासिक Unix टाइम और ज़्यादातर बैकएंड लॉग सेकंड। 10 अंकों की संख्या सेकंड, 13 अंक मिलीसेकंड। मिलाने पर 2026 साल 53,000 की तारीख बन जाती है — या 1970 की।

2. UTC vs लोकल टाइम

टाइमस्टैंप में टाइमज़ोन नहीं होता — हर जगह वही पल है। बग तब आते हैं जब कोड यूज़र की जगह सर्वर के टाइमज़ोन से बदले, या 2026-09-01 08:00 जैसी स्ट्रिंग बिना बताए पार्स करे कि वह किस ज़ोन की है।

3. DST शिफ़्ट

DST वाले ज़ोन साल में दो बार एक घंटा आगे-पीछे होते हैं। गर्मी और सर्दी की लोकल 09:00 में सेव मीटिंग = दो अलग UTC पल; UTC सेव करें, दिखाते वक़्त बदलें — पूरी बग-श्रेणी ख़त्म।

4. लोकल-आधारित पार्सिंग

03/04/2026 एक देश में 4 मार्च, दूसरे में 3 अप्रैल। टेक्स्ट से तारीख पार्स करने के लिए साफ़ फ़ॉर्मैट चाहिए — कभी अंदाज़ा नहीं।

काम के नियम: UTC सेव करें, सिर्फ दिखाने पर बदलें, फ़ॉर्मैट हमेशा लिखें। टाइमस्टैंप या डेट स्ट्रिंग जाँचने के लिए टाइमस्टैंप टूल या वर्ल्ड क्लॉक — दोनों ब्राउज़र में चलते हैं।