मैंने टाइमज़ोन और जावास्क्रिप्ट Date
ऑब्जेक्ट के साथ अजीब कुछ देखा।क्या जावास्क्रिप्ट 'दिनांक' ऑब्जेक्ट में 21 अक्टूबर 2012 का प्रतिनिधित्व करने का कोई तरीका है?
एक लिनक्स बॉक्स पर इस कोशिश कर रहा है:
$ TZ='America/Sao_Paulo' js
js> new Date(2012, 9, 21, 0, 0, 0).toString()
"Sat Oct 20 2012 23:00:00 GMT-0300 (BRST)"
मैं यह असंभव एक वस्तु है कि अक्टूबर 2012 हर एक उस दिन Date
00:00 01:00 के बीच और प्राप्त करने के लिए attemps के 21 का प्रतिनिधित्व करता है पाने के लिए मिल गया 11:00 अपराह्न और 00:00 के बीच पहले दिन की तारीख में परिणाम।
वापस एक ही तिथि प्राप्त करने में इस तरह के एक तारीख वस्तु परिणाम के लिए
एक घंटे (या एक दिन) जोड़ना (Windows उपयोगकर्ता एक ही व्यवहार का अनुभव करने के लिए ब्रासीलिया/GMT-03 के लिए अपने समय क्षेत्र बदल सकते हैं)।
मुझे लगता है कि इसे ब्राजील में उस विशिष्ट तारीख पर होने वाली डेलाइट सेविंग टाइम के साथ करना है, हालांकि मुझे बिल्कुल पता नहीं है कि इससे कैसे निपटना है।
मैं एक पाश है कि महीने के दिनों में दोहराता (एक कैलेंडर आवेदन के लिए) और यह स्पष्ट रूप से उस मामले में हमेशा के लिए लूप जब अक्टूबर के 20 वीं तक पहुंच गया है 2012
वहाँ कुछ होना चाहिए मैं कर रहा हूँ गलत है, लेकिन मुझे नहीं पता कि इस तरह के मामले से निपटने के लिए, जैसा कि मुझे लगता है कि यह अन्य टाइमज़ोन के लिए भी हो सकता है।
जावास्क्रिप्ट में Date
से निपटने का अनुशंसित तरीका क्या है यह सुनिश्चित करने के लिए कि इस टाइमज़ोन/डेलाइट सेविंग टाइम से संबंधित समस्याएं नहीं होती हैं?
आपके उत्तर के लिए धन्यवाद। हालांकि मेरी समस्या को तारीख की स्ट्रिंग प्रस्तुति नहीं मिल रही है, लेकिन एक वैध वस्तु प्राप्त करने वाला एक वैल्यू ऑब्जेक्ट प्राप्त करना। – ereOn
फिर यूटीसी विधि का उपयोग करें: 'नई तिथि (दिनांक .UTC (2012, 9, 21, 0, 0, 0)); ' – bjornd
यह वास्तव में बेहतर काम करता है। क्या आप अपना उत्तर संपादित कर सकते हैं ताकि यह स्पष्ट हो सके कि वास्तविक समाधान क्या है? मुझे इसे स्वीकार करने में खुशी होगी :) – ereOn