TypeScript 5.5 जारी: नए रिलीज़ में क्या बदला

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

TypeScript 5.5 जारी: नए रिलीज़ में क्या बदला



14 जून 2024 को Microsoft टीम ने आधिकारिक तौर पर TypeScript 5.5 रिलीज़ प्रस्तुत किया — जो JavaScript के लिए लोकप्रिय स्टैटिक टाइपिज़र के सबसे महत्वपूर्ण संस्करणों में से एक है। नए अपडेट में डेवलपर्स को न केवल बग फिक्स मिले, बल्कि कई शक्तिशाली सुविधाएँ भी मिलीं जो कोड लिखना आसान बनाती हैं और प्रदर्शन बढ़ाती हैं। आइए मुख्य नवाचारों पर नज़र डालते हैं।



पृथक घोषणाएँ (Isolated Declarations)

TypeScript 5.5 की सबसे प्रतीक्षित नई सुविधा — Isolated Declarations मोड का प्रायोगिक समर्थन है। अब कंपाइलर पूरे प्रोजेक्ट को लोड किए बिना, प्रत्येक मॉड्यूल के लिए स्वतंत्र रूप से घोषणा फ़ाइलें (.d.ts) जनरेट कर सकता है। यह विशेष रूप से बड़े मोनोरिपॉजिटरी और बिल्ड के लिए उपयोगी है, जहाँ कंपाइलर की गति बढ़ाना महत्वपूर्ण हो जाता है। इस मोड को tsconfig.json में --isolatedDeclarations फ्लैग के माध्यम से सक्षम किया जा सकता है।



  • बिल्ड में तेज़ी: पृथक टाइप कंपाइलेशन प्रक्रिया को समानांतर करने और प्रतीक्षा समय को कम करने की अनुमति देता है।
  • लाइब्रेरी के लिए सुविधा: पैकेज लेखक अब तेज़ी से अद्यतन टाइप जनरेट कर सकते हैं।
  • बैकवर्ड संगतता: नया मोड मौजूदा कोड को नहीं तोड़ता, इसे धीरे-धीरे लागू किया जा सकता है।


क्लोजर में मेमोरी लीक पर नियंत्रण

TypeScript 5.5 ने क्लोजर से संबंधित संभावित मेमोरी लीक के बारे में चेतावनी देना सीख लिया है। कंपाइलर अब विश्लेषण करता है कि क्या क्लोजर बड़ी ऑब्जेक्ट या DOM-एलिमेंट पर अनावश्यक संदर्भ रख रहा है। उदाहरण के लिए:

function setupHandler() {    const largeData = new Array(1000000).fill('x');    document.getElementById('btn')?.addEventListener('click', () => {        console.log('clicked');        // पहले कंपाइलर चेतावनी नहीं देता था कि largeData मेमोरी में रहता है    });}

अब TypeScript एक चेतावनी जारी करेगा यदि वह पाता है कि क्लोजर उन वेरिएबल्स को कैप्चर कर रहा है जो इसके अंदर उपयोग नहीं किए जाते हैं, लेकिन हैंडलर से बंधे होने के कारण मेमोरी में रहते हैं। यह मैन्युअल प्रोफाइलिंग के बिना अधिक कुशल कोड लिखने में मदद करता है।



ऐरे और डिस्ट्रक्चरिंग के लिए बेहतर टाइप अनुमान

नए संस्करण में टाइप अनुमान तंत्र में काफी सुधार किया गया है। TypeScript 5.5 ऐरे और टपल के डिस्ट्रक्चरिंग में टाइप को अधिक सटीक रूप से निर्धारित करता है। उदाहरण के लिए, टपल लौटाने वाले API के साथ काम करते समय, कंपाइलर अब प्रत्येक एलिमेंट को सही ढंग से पहचानता है:

function fetchUser() {    return [1, 'Alice'] as const;}const [id, name] = fetchUser(); // id: number, name: string (पहले union था)

यह अनावश्यक मैन्युअल एनोटेशन से बचाता है और कोड को साफ बनाता है।



JSDoc से स्वचालित टाइप निर्धारण

allowJs का उपयोग करते समय और JavaScript फ़ाइलों की जाँच करते समय, TypeScript 5.5 ने जटिल मामलों में भी JSDoc टिप्पणियों से स्वचालित रूप से टाइप निकालना सीख लिया है — उदाहरण के लिए, कई पैरामीटर वाले कॉलबैक के लिए। यह विशेष रूप से उन प्रोजेक्ट्स के लिए प्रासंगिक है जो धीरे-धीरे JS से TS में माइग्रेट हो रहे हैं।



अन्य सुधार और सुधार

  • गति अनुकूलन: मध्यवर्ती परिणामों को कैश करने के कारण बड़े प्रोजेक्ट्स के लिए कंपाइलेशन में 15% तक की तेज़ी।
  • नए फ्लैग: --noUncheckedSideEffectImports साइड इफेक्ट के बिना इम्पोर्ट को प्रतिबंधित करता है यदि वे स्पष्ट रूप से उपयोग नहीं किए गए हैं।
  • बग फिक्स: 80 से अधिक त्रुटियाँ ठीक की गईं, संबं

अनुशंसित लाइब्रेरीज़