⊗tsSpGnIms 35 of 37 menu

TypeScript में जेनरिक्स की कंस्ट्रेंट्स

पिछले पाठों में से एक में, हमने एक जेनरिक टाइप फंक्शन बनाया था जिसे इसमें पास किए गए पैरामीटर की लंबाई प्रिंट करनी थी। हालांकि, कंपाइल करते समय हमें एक एरर मिली, क्योंकि सभी टाइप्स की लंबाई नहीं हो सकती:

function myFunc < T > (data: T): T { console.log(data.length); // एरर return data; }

उस स्थिति में, हमने जेनरिक टाइप को जेनरिक ऐरे टाइप में बदलकर स्थिति को ठीक किया। लेकिन TypeScript में जेनरिक्स पर कंस्ट्रेंट्स बनाने की क्षमता है। इसके लिए एंगल ब्रैकेट्स में, वेरिएबल T के बाद कीवर्ड extends लिखते हैं। इसके बाद कर्ली ब्रैकेट्स में एक नया वेरिएबल str स्ट्रिंग टाइप का लिखते हैं। फंक्शन का बाकी कोड अपरिवर्तित रहेगा:

function myFunc <T extends {str: string}> (data: T): void { console.log(data.str.length); }

इसका मतलब है कि जेनरिक टाइप, कर्ली ब्रैकेट्स में निर्दिष्ट वेरिएबल str के टाइप को इनहेरिट करता है। अब हम अपने फंक्शन के काम को चेक करते हैं और एक वेरिएबल myStr बनाते हैं, जो str टाइप को रेफर करती है, और इसे कर्ली ब्रैकेट्स में एक वैल्यू असाइन करते हैं:

let myStr: {str: string} = {str: 'abcde'};

आइए फंक्शन myFunc को कॉल करते हैं, इसके टाइप को फिर से निर्दिष्ट करना न भूलें और वेरिएबल myStr को एक पैरामीटर के रूप में पास करें:

myFunc <{str: string}> (myStr);

पाठ में देखे गए उदाहरण के आधार पर, न्यूमेरिक ऐरे की लंबाई खोजने के लिए एक फंक्शन सेट करें।

हिन्दी
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
हम साइट के कार्य, विश्लेषण और व्यक्तिगतकरण के लिए कुकीज़ का उपयोग करते हैं। डेटा प्रसंस्करण गोपनीयता नीति के अनुसार किया जाता है।
सभी स्वीकार करें कॉन्फ़िगर करें अस्वीकार करें