@KARASZI मूल कारण के बारे में पूरी तरह से सही है: यूनिक्स टाइमस्टैम्प हमेशा जब तक आप यूटीसी हैं उन्हें कुशल बनाना। मैं सुझाव दूंगा कि यदि आप यूनिक्स टाइमस्टैंप चाहते हैं तो आपको इसे यूटीसी में छोड़ देना चाहिए, और यदि आपको उपयोगकर्ता को प्रारूपित समय प्रदर्शित करने की आवश्यकता है तो केवल स्थानीय समय में कनवर्ट करें।
ऐसा करने का पहला लाभ यह है कि आपके सभी सर्वर एक ही समय में "बोल सकते हैं"। उदाहरण के लिए, यदि आपने अमेज़ॅन ईसी 2 यूएस ईस्ट और अमेज़ॅन ईसी 2 यूएस वेस्ट में सर्वर तैनात किए हैं और वे एक सामान्य डेटाबेस साझा करते हैं, तो आप हर समय टाइमज़ोन रूपांतरणों के बारे में चिंता किए बिना अपने डेटाबेस में और अपने सर्वर पर यूटीसी टाइमस्टैम्प का उपयोग कर सकते हैं। यह यूटीसी टाइमस्टैम्प का उपयोग करने का एक शानदार कारण है, लेकिन यह आपके लिए लागू नहीं हो सकता है।
इसका दूसरा लाभ यह है कि आप डेलाइट सेविंग टाइम (या टाइमज़ोन या तो, यदि आप चल रहे प्लेटफॉर्म पर समय माप रहे हैं) के बारे में चिंता किए बिना बीत चुके समय के मामले में चीजों को माप सकते हैं!)। यह बहुत अधिक नहीं आता है, लेकिन अगर आपके पास ऐसी स्थिति थी जहां कुछ नकारात्मक समय लगे क्योंकि स्थानीय समय "मापने" के दौरान एक घंटा वापस गिर गया, तो आप बहुत उलझन में होंगे!
तीसरा कारण मैं सोच सकता हूं कि यह बहुत मामूली है, लेकिन कुछ प्रदर्शन गीक वास्तव में इसकी सराहना करेंगे: आप डेट क्लास के "अब" फ़ंक्शन का उपयोग करके प्रत्येक बार एक नई दिनांक ऑब्जेक्ट आवंटित किए बिना कच्चे यूटीसी टाइमस्टैम्प प्राप्त कर सकते हैं।
var ts = Date.now()/1000;
मैं node.js का उपयोग कर रहा हूं, इसलिए यह सर्वर जावास्क्रिप्ट है – TIMEX