JavaScript Temporal आ रहा है
(developer.mozilla.org)- अवलोकन
- JavaScript Temporal ऑब्जेक्ट का इम्प्लीमेंटेशन ब्राउज़र के experimental versions में जारी होना शुरू हो गया है
- वेब डेवलपर्स के लिए date और time handling काफ़ी सरल और modern होने वाली है
- scheduling, internationalization, और time-related data को संभालने वाले applications में efficient और accurate built-in features का उपयोग संभव होगा
- JavaScript
Dateऑब्जेक्ट की समस्याएँ
- 1995 में Java के शुरुआती
java.util.Dateimplementation की कॉपी करके बनाया गया था - यह सिर्फ़ उपयोगकर्ता के local time और UTC को support करता है, time zone support नहीं है
- parsing behavior बहुत अस्थिर है और यह mutable है
- daylight saving time (DST) और historical calendar changes की गणना करना कठिन है
- Temporal की मुख्य विशेषताएँ
- इसे
Dateऑब्जेक्ट के पूर्ण replacement के रूप में डिज़ाइन किया गया है - time zone और calendar representation का support
- 200 से अधिक utility methods प्रदान करता है
- conversion, comparison, calculation, formatting जैसी विभिन्न सुविधाएँ शामिल हैं
- ब्राउज़र support की स्थिति
- Firefox के पास फिलहाल सबसे परिपक्व implementation है
- Firefox Nightly version में experimental feature के रूप में उपलब्ध
- Safari और Chrome में भी implementation जारी है
- TC39 के documentation page पर
@js-temporal/polyfillके माध्यम से इसे आज़माया जा सकता है
- मुख्य components
Duration: दो समय बिंदुओं के बीच का अंतरInstant: timestampZonedDateTime: time zone के साथ date/timePlainDateTime: time zone के बिना date/time- इसके अलावा date/time से संबंधित कई अन्य classes भी उपलब्ध हैं
यह नया API JavaScript में date और time को संभालने के लिए एक modern approach प्रदान करेगा, ऐसी उम्मीद है।
6 टिप्पणियां
बहुत देर से आया क्रश का रिप्लाई टेक्स्ट
शुरुआती
Dateimplementation भी Java से लाई गई थी औरTemporalimplementation में भी Java से काफी कुछ लिया गया है, तो लगता है कि फिर इसमें इतना समय लगने की क्या ज़रूरत थी।Java 8 में
LocalDateTime2014 में आ गया था, इसलिए अगर इसी आधार परTemporalimplementation जल्दी आ गई होती, तो शायद अलग-अलग third-party libraries में बिखराव की ज़रूरत नहीं पड़ती।अरे अरे, कहीं बहुत सुना-सुना सा...
LocalDateTimeकोPlainDateTimeमें बदलने के अलावा यह लगभग Java जैसा ही है…होना अच्छा तो है… लेकिन क्या इसे इतना आगे ले जाने की ज़रूरत थी…
पहले अलग-अलग time zone के हिसाब से समय प्रबंधन करने के लिए या तो लाइब्रेरी का इस्तेमाल करना पड़ता था, या कई शर्तों को ध्यान में रखकर खुद implement करना पड़ता था, इसलिए अगर यह बुनियादी रूप से supported दिशा में जाए तो अच्छा है।