§15.9.1.1 of the ECMA-262 specification के अनुसार
,
समय 01 जनवरी, 1970 के बाद से यूटीसी मिलीसेकेंड में ECMAScript में मापा जाता है।
...
ईसीएमएस्क्रिप्ट दिनांक वस्तुओं द्वारा समर्थित समय की वास्तविक सीमा ... 01 जनवरी, 1 9 70 यूटीसी की शुरुआत में मध्यरात्रि के सापेक्ष मापा गया बिल्कुल -100,000,000 दिन 100,000,000 दिन। यह 01 जनवरी, 1 9 70 यूटीसी के दोनों तरफ 8,640,000,000,000,000 मिलीसेकंड की एक श्रृंखला देता है।
तो Date
वस्तु के साथ जल्द से जल्द तारीख प्रदर्शनीय काफी दूर जाना जाता है मानव इतिहास से परे है:
new Date(-8640000000000000).toUTCString()
// Tue, 20 Apr 271,822 B.C. 00:00:00 UTC
नवीनतम तारीख Y10K परे और यहां तक कि Y100K परे पिछले करने के लिए पर्याप्त है, लेकिन फिर से काम करने की आवश्यकता होगी Y276K से कुछ सौ साल पहले।
new Date(8640000000000000).toUTCString()
// Sat, 13 Sep 275,760 00:00:00 UTC
इस सीमा के बाहर कोई भी दिनांक Invalid Date
वापस आ जाएगी।
new Date(8640000000000001) // Invalid Date
new Date(-8640000000000001) // Invalid Date
संक्षेप में, जावास्क्रिप्ट Date
प्रकार से पहले 1 जनवरी, 1970 के बाद लगभग 285,616 साल के भीतर परिशुद्धता millisecond के लिए समय को मापने के लिए पर्याप्त होगा। प्रश्न में पोस्ट की गई तारीखें इस सीमा के अंदर बहुत ही आराम से हैं।
स्रोत
2012-09-30 23:48:06
तो, पूछने का क्या मतलब है * "यदि इन दूर-से-वर्तमान तिथियों का प्रतिनिधित्व नहीं किया जा सकता है ..." * जब आप पहले ही जानते थे कि उनका प्रतिनिधित्व किया जा सकता है? प्रश्न पूछें, अगर आपको पता है कि यह मूक है? : पी –
@ user1689607 मुझे नहीं पता, सवाल सिर्फ इसके बिना अपूर्ण महसूस हुआ। –
वैसे, यह वैसे भी एक दिलचस्प सवाल था। जेएस को देखने के लिए अच्छा 2038 समस्या का सामना नहीं करता है। तत्काल संदर्भ-उद्धरण के लिए –