TypeScript मानक पुस्तकालय: पूर्ण अवलोकन
\n\nTypeScript केवल JavaScript पर एक ओवरले नहीं है जो स्थैतिक टाइपिंग जोड़ता है। भाषा के साथ एक शक्तिशाली मानक पुस्तकालय आता है जो डेवलपर की क्षमताओं का विस्तार करता है। इस लेख में, हम TypeScript मानक पुस्तकालय के प्रमुख घटकों का विस्तार से विश्लेषण करेंगे, उपयोग के उदाहरण दिखाएंगे और समझाएंगे कि वे विकास को कैसे सरल बनाते हैं।
\n\n1. अंतर्निहित डेटा प्रकार
\n\nTypeScript मानक पुस्तकालय में सभी मूल JavaScript प्रकार शामिल हैं, लेकिन उनमें सख्त टाइपिंग और नए अमूर्त जोड़े गए हैं:
\n\n- \n
number,string,boolean— आदिम प्रकार; \n nullऔरundefined— विशेष मान; \n any— प्रकार जाँच अक्षम करना; \n unknown—anyका सुरक्षित विकल्प; \n never— उन फ़ंक्शनों के लिए प्रकार जो कभी समाप्त नहीं होते; \n void— वापसी मान का अभाव। \n
// अंतर्निहित प्रकारों के उपयोग का उदाहरण\nlet age: number = 25;\nlet name: string = "अन्ना";\nlet isActive: boolean = true;\nlet data: unknown = { id: 1 };\nlet error: never = (() => { throw new Error("त्रुटि"); })();\n\n\n2. उपयोगिता प्रकार (Utility Types)
\n\nTypeScript अंतर्निहित उपयोगिता प्रकारों का एक सेट प्रदान करता है जो जटिल संरचनाएँ लिखने की आवश्यकता के बिना मौजूदा प्रकारों को बदलने की अनुमति देता है:
\n\n- \n
Partial<T>— प्रकारTके सभी फ़ील्ड को वैकल्पिक बनाता है; \n Required<T>— सभी फ़ील्ड को अनिवार्य बनाता है; \n Readonly<T>— फ़ील्ड में परिवर्तन को प्रतिबंधित करता है; \n Pick<T, K>— प्रकार से निर्दिष्ट कुंजियाँ चुनता है; \n Omit<T, K>— निर्दिष्ट कुंजियों को बाहर करता है; \n Record<K, T>— कुंजियोंKऔर मानोंTके साथ एक प्रकार बनाता है। \n
interface User {\n id: number;\n name: string;\n email: string;\n}\n\n// सभी फ़ील्ड को वैकल्पिक बनाना\ntype PartialUser = Partial<User>;\n\n// केवल id और name चुनना\ntype UserPreview = Pick<User, "id" | "name">;\n\n// एक शब्दकोश बनाना\ntype UserMap = Record<string, User>;\n\n\n3. संग्रह के साथ कार्य: Map, Set, WeakMap, WeakSet
\n\nमानक पुस्तकालय में ES6+ संग्रहों के टाइप किए गए संस्करण शामिल हैं। TypeScript इन संरचनाओं का उपयोग करते समय स्वचालित रूप से प्रकार निकालता है:
\n\n- \n
Map<K, V>— कुंजी-मान संग्रह; \n Set<T>— अद्वितीय मानों का संग्रह; \n WeakMap<K extends object, V>— "कमजोर" संदर्भों के साथ Map का एनालॉग; \n WeakSet<T extends object>— ऑब्जेक्ट के लिए Set का एनालॉग। \n
// टाइप किया गया Map\nconst userRoles = new Map<number, string>();\nuserRoles.set(1, "admin");\nuserRoles.set(2, "user");\n\n// टाइप किया गया Set\nconst uniqueIds = new Set<number>([1, 2, 3, 3]); // {1, 2, 3}\n\n\n4. प्रॉमिस और अतुल्यकालिकता
\n\nTypeScript Promise<T> और कीवर्ड async/await के माध्यम से अतुल्यकालिक प्रोग्रामिंग का पूरी तरह से समर्थन करता है। प्रॉमिस की टाइपिंग आपको सटीक रूप से निर्दिष्ट करने की अनुमति देती है कि किस प्रकार का डेटा वापस किया जाएगा:
async function fetchUser(id: number): Promise<User> {\n const response = await fetch(`/api/users/${id}`);\n return response.json(); // वापसी मान का प्रकार — User\n}\n\n// उपयोग\nfetchUser(1).then(user => {\n console.log(user.name); // name — स्ट्रिंग\n});\n\n\n5. DOM और ब्राउज़र API के साथ कार्य
\n\nTypeScript मानक पुस्तकालय में DOM API के लिए पूर्ण टाइपिंग शामिल है। यह तत्वों, घटनाओं और अन्य ब्राउज़र ऑब्जेक्ट के साथ सुरक्षित रूप से काम करने की अनुमति देता है:
\n\n- \n
पुस्तकालय में भी
अनुशंसाएँ