तकनीकी सहायता

Unix Timestamp सेकंड बनाम मिलीसेकंड: तारीख 1970 क्यों दिखती है

अगर Unix timestamp 1970 के पास की तारीख बन जाए, तो अक्सर सेकंड को मिलीसेकंड पढ़ लिया गया है। इकाइयाँ कैसे पहचानें।

संक्षिप्त उत्तर

अगर Unix timestamp 1970 के पास की तारीख दे, तो मान अक्सर गलत इकाई में समझा जा रहा है।

Unix timestamps आम तौर पर सेकंड इस्तेमाल करते हैं, जबकि JavaScript Date आम तौर पर मिलीसेकंड।

आधुनिक 10 अंकों वाला timestamp अक्सर सेकंड होता है, 13 अंकों वाला अक्सर मिलीसेकंड। इकाइयाँ न मिलें तो 1,000 से गुणा या भाग करना पड़ सकता है।

आपने timestamp को तारीख में बदला और जनवरी 1970 पर पहुँच गए। घड़ी शायद ही खराब होती है। संख्या मिलीसेकंड पढ़ी गई जबकि सेकंड में संग्रहीत थी—या उलटा।

Unix timestamp क्या है?

Unix timestamp समय Unix epoch से मापता है: 1970-01-01 00:00:00 UTC। आम तौर पर पूरे सेकंड होते हैं। वही क्षण मिलीसेकंड में भी रखा जा सकता है (सेकंड × 1,000)। संख्या खुद इकाई नहीं बताती।

सेकंड बनाम मिलीसेकंड: 1,000 गुना अंतर

एक सेकंड 1,000 मिलीसेकंड के बराबर है। 1720000000 की तुलना 1720000000000 से करें। पहला सेकंड हो और दूसरा मिलीसेकंड तो वही क्षण है। पहले को मिलीसेकंड पढ़ें तो तारीख 1970 की ओर कूदती है।

ये UTC परिणाम ऊपर की संख्याओं से गिने गए हैं, अनुमान नहीं।

मान संभावित इकाई व्याख्या (UTC)
1720000000 सेकंड सेकंड पढ़ने पर आधुनिक तारीख: 2024-07-03 09:46:40 UTC
1720000000000 मिलीसेकंड मिलीसेकंड पढ़ने पर वही क्षण: 2024-07-03 09:46:40 UTC
1720000000 को मिलीसेकंड मानकर गलत इकाई 1970 के पास की तारीख: 1970-01-20 21:46:40 UTC

मेरा timestamp 1970 क्यों दिखाता है?

अगर सेकंड वाले मान को मिलीसेकंड समझा जाए, तो संख्या जरूरी से 1,000 गुना छोटी होती है। JavaScript तब Unix epoch के बाद केवल छोटा अंतराल गिनता है, इसलिए तारीख 1970 में रहती है:

const seconds = 1720000000;

new Date(seconds);
// 1970-01-20 21:46:40 UTC

new Date(seconds * 1000);
// 2024-07-03 09:46:40 UTC

वह 1970 वाली तारीख epoch प्लस करीब दो हफ्ते है। Date को देने से पहले सेकंड को 1,000 से गुणा करें।

  • सेकंड
  • 1720000000
  • मिलीसेकंड
  • 1720000000000
वही क्षण: सेकंड × 1,000 = मिलीसेकंड।
  • सेकंड का मान
  • गलती से मिलीसेकंड समझा गया
  • 1970 के पास की तारीख
सेकंड को मिलीसेकंड पढ़ने पर Unix epoch के पास गिरता है।
सेकंड या मिलीसेकंड?

अगर परिणाम 1970 के पास हो, तो समय क्षेत्र जाँचने से पहले timestamp की इकाई देखें।

क्या 10 अंक सेकंड हैं और 13 मिलीसेकंड?

आधुनिक तारीखों पर 10 अंक अक्सर सेकंड और 13 अक्सर मिलीसेकंड होते हैं। यह त्वरित संकेत है, सत्यापन नियम नहीं। अंकों की संख्या समय सीमा के साथ बदलती है, और कुछ API माइक्रोसेकंड या नैनोसेकंड रखते हैं। इकाई दस्तावेज़ या समझदारी भरी तारीख से पुष्टि करें।

यह JavaScript में इतना आम क्यों है

JavaScript में संख्यात्मक Date epoch से मिलीसेकंड है। कई बैकएंड, डेटाबेस और Unix उपकरण अभी भी सेकंड रखते हैं। सेकंड सीधे Date में देना आम गलती है:

const unixSeconds = 1720000000;

const wrong = new Date(unixSeconds);
const correct = new Date(unixSeconds * 1000);

wrong 1970 के पास है (1970-01-20 21:46:40 UTC)। correct आधुनिक क्षण है (2024-07-03 09:46:40 UTC)।

अन्य सिस्टम अलग इकाइयाँ इस्तेमाल करते हैं

अन्य भाषाएँ, API और डेटाबेस सेकंड या मिलीसेकंड इस्तेमाल कर सकते हैं। कुछ माइक्रोसेकंड या नैनोसेकंड रखते हैं। यह न मानें कि कोई भाषा हमेशा एक इकाई इस्तेमाल करती है—दस्तावेज़ देखें। अगर संख्या JSON में हो, तो JSON फ़ॉर्मैट और तुलना फ़ील्ड पढ़ने में मदद करता है; इकाई फिर भी नहीं बताता।

मैं कैसे जानूँ मेरा timestamp किस इकाई में है?

ये जाँचें क्रम से करें। केवल अंकों की गिनती काफी नहीं।

  1. API या डेटाबेस का दस्तावेज़ देखें।
  2. अंकों की अनुमानित संख्या देखें।
  3. मान की तुलना एक संभावित आधुनिक timestamp से करें।
  4. मान को सेकंड और मिलीसेकंड दोनों तरह आज़माएँ।
  5. देखें कि निकली तारीख समझ में आती है या नहीं।

अगर एक व्याख्या 1970 पर गिरे और दूसरी पहचानी हुई तारीख पर, तो कारण इकाई का मेल न खाना है।

Unix timestamp की आम गलतियाँ

  • सेकंड को मिलीसेकंड समझना। तारीख 1970 की ओर सिमट जाती है, ऊपर के उदाहरण की तरह।
  • मिलीसेकंड को सेकंड समझना। तारीख दूर भविष्य में कूदती है, या रूपांतरण असफल होता है।
  • 1,000 से दो बार गुणा। जो मान पहले से मिलीसेकंड था बहुत बड़ा हो जाता है और तारीख सदियों आगे चली जाती है।
  • 1,000 से दो बार भाग। सेकंड का मान फिर सिकुड़ता है, फिर 1970 के पास।
  • समय क्षेत्र को दोष देना। क्षेत्र घंटे या कैलेंडर का दिन खिसका सकता है। आधुनिक timestamp को 1970 नहीं बनाता।
  • फ़ॉर्मैट की गई तारीख को Unix timestamp समझना। जैसे 2024-07-03T09:46:40Z कोई epoch संख्या नहीं। इसे तारीख के रूप में पार्स करें, सेकंड के रूप में नहीं।

क्या समय क्षेत्र 1970 की समस्या पैदा करता है?

आमतौर पर नहीं। समय क्षेत्र दिखाई गई घड़ी बदल सकता है, और आधी रात के पास कैलेंडर की तारीख। आधुनिक Unix timestamp को 1970 नहीं बनाता। अगर परिणाम 1970 हो तो पहले सेकंड बनाम मिलीसेकंड देखें।

Unix timestamp बदलकर जाँचें

NEXNARA दिनांक और समय कनवर्टर आपके ब्राउज़र में Unix timestamp बदल सकता है।

Unix सेकंड या मिलीसेकंड चिपकाएँ, वर्तमान timestamp लें, UTC और स्थानीय समय देखें, समय क्षेत्र बदलें और तारीख फ़ॉर्मैट करें। स्वतः पहचान अक्सर 10 अंक सेकंड और 13 मिलीसेकंड मानती है; इकाई आप फिर भी चुन सकते हैं।

रूपांतरण खुद आपके ब्राउज़र में होता है। यह टूल तारीखें या timestamps किसी NEXNARA सर्वर पर नहीं भेजता। विज्ञापन और साइट की अन्य सुविधाएँ अभी भी नेटवर्क इस्तेमाल करती हैं; वह रूपांतरण से अलग है।

Unix timestamp जाँचना है? दिनांक और समय कनवर्टर खोलें और सेकंड की मिलीसेकंड से तुलना करें।

FAQ

मेरा Unix timestamp 1970 क्यों दिखाता है?

अक्सर सेकंड होते हैं जिन्हें मिलीसेकंड पढ़ा गया। JavaScript बहुत छोटी संख्या लेता है, इसलिए तारीख 1970-01-01 00:00:00 UTC के तुरंत बाद बैठती है। सेकंड को 1,000 से गुणा कर फिर रूपांतरित करें।

Unix timestamps सेकंड हैं या मिलीसेकंड?

आमतौर पर सेकंड। कई वेब API और JavaScript Date मिलीसेकंड इस्तेमाल करते हैं। हमेशा देखें कि वह सिस्टम क्या दस्तावेज़ करता है। कुछ सिस्टम माइक्रोसेकंड या नैनोसेकंड रखते हैं।

सेकंड को मिलीसेकंड कैसे बदलूँ?

1,000 से गुणा करें। 1720000000 सेकंड 1720000000000 मिलीसेकंड हैं। उलटी दिशा में 1,000 से भाग दें।

JavaScript Date मिलीसेकंड क्यों इस्तेमाल करता है?

JavaScript में Date का संख्यात्मक timestamp Unix epoch से मिलीसेकंड के रूप में परिभाषित है। इसलिए new Date(unixSeconds) गलत है जब unixSeconds Unix सेकंड हों।

क्या 10 अंकों वाला timestamp हमेशा सेकंड है?

नहीं। आधुनिक तारीखों पर अक्सर सेकंड होता है, और 13 अंक अक्सर मिलीसेकंड। अंकों की गिनती संकेत है, नियम नहीं। दस्तावेज़ या समझदारी भरी तारीख से पुष्टि करें।

क्या Unix timestamp में समय क्षेत्र होता है?

नहीं। Unix timestamp एक क्षण है जो 1970-01-01 00:00:00 UTC से गिना जाता है। समय क्षेत्र उस क्षण के दिखाने का तरीका बदलते हैं, संख्या को नहीं।