2009-06-19 7 views
10

मैं सोच रहा था कि जावास्क्रिप्ट दिनांक/समय फ़ंक्शन हमेशा correct, universal dates/times या जावास्क्रिप्ट क्लाइंट-साइड भाषा होने पर वापस आ जाएंगे, तो वे इस बात पर निर्भर हैं कि क्लाइंट मशीन की तिथि क्या है।क्लाइंट मशीन पर निर्भर जावास्क्रिप्ट दिनांक/समय कार्य हैं?

यदि यह क्लाइंट मशीन पर निर्भर है, तो सही सार्वभौमिक समय प्राप्त करने का सबसे अच्छा तरीका क्या है?

उत्तर

3

चूंकि थॉमसट्रटर ने कहा है कि जावास्क्रिप्ट दिनांक कार्य क्लाइंट की मशीन पर निर्भर हैं। हालांकि अगर आप एक आधिकारिक तिथि प्राप्त करना चाहते हैं तो आप अपने सर्वर को एजेक्स अनुरोध कर सकते हैं जो केवल तारीख स्ट्रिंग देता है। इसके बाद आप तिथि 0 स्ट्रिंग को

var ds = ... // Some ajax call 
var d = new Date(ds); 
3

विधियां जो उन्हें करने के लिए प्रलेखित की जाती हैं। सबसे अच्छा तरीका है यूटीसी जानकारी पाने के लिए स्पष्ट रूप से यूटीसी तरीकों का उपयोग करने के लिए है:

getUTCFullYear(), getUTCMonth(), getUTCDate(), आदि

2

या, जावास्क्रिप्ट एक क्लाइंट-साइड भाषा जा रहा है, वे क्या पर निर्भर हैं ग्राहक मशीन की तारीख तय है।

हाँ, यह सही है।

यदि यह क्लाइंट मशीन पर निर्भर है, तो सही सार्वभौमिक समय प्राप्त करने का सबसे अच्छा तरीका क्या है?

किसी अधिकृत स्रोत से समय/दिनांक प्राप्त करने के लिए, क्लाइंट मशीन से नहीं।

+0

क्लाइंट टाइम डेटा महत्वपूर्ण अनुप्रयोगों के लिए भरोसेमंद नहीं है। लेकिन मुझे लगता है कि ओपी पहले से ही जानता है। –

+2

क्या कोई आधिकारिक स्रोत है जो एपीआई का खुलासा करता है? – rick

+0

एनटीपी का उपयोग कर अपने सर्वर को सिंक करके इसे स्वयं करना सबसे अच्छा होगा। –

8

जावास्क्रिप्ट केवल उस समय के बारे में जितना जानता है जितना पर्यावरण वर्तमान में चल रहा है, और जावास्क्रिप्ट client-side है।

तो, जावास्क्रिप्ट उस उपयोगकर्ता की दया पर है जिस पर सही समय है, और टाइमज़ोन, पीसी पर सेटिंग्स जिस पर वे ब्राउज़ कर रहे हैं।

यदि उपयोगकर्ता के पास गलत समय क्षेत्र है, लेकिन सही समय है, तो getUTCDate() जैसे समय क्षेत्रों के आधार पर कार्य गलत होगा।

यदि उपयोगकर्ता का गलत समय है, तो जावास्क्रिप्ट में सभी समय-संबंधित कार्य गलत होंगे।

कोई भी तर्क कर सकता है, हालांकि, यदि उपयोगकर्ता अपने पीसी पर सही समय चाहता है तो वे सही समय निर्धारित करेंगे। इसका काउंटर यह है कि उपयोगकर्ता को यह नहीं पता कि यह कैसे करना है।

संबंधित मुद्दे