TypeScript Academy · पाठ

कंडीशनल प्रकार (परिचय) और यूनियन पर वितरण

कंडीशनल प्रकार (T extends U ? X : Y) सीखें और जानें कि शक्तिशाली टाइप-स्तरीय लॉजिक के लिए वे यूनियन पर कैसे वितरित होते हैं।

पाठ 2, कुल 3 में से8 चरण

कंडीशनल प्रकार (परिचय) और यूनियन पर वितरण, CoddyKit पर TypeScript Academy का एक निःशुल्क पाठ है। यह 3 में से 2वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह TypeScript Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। TypeScript Academy पाठ्यक्रम में कुल 3 पाठ शामिल हैं।

परिचय

लक्ष्य: प्रकार-स्तर पर शाखा चुनने के लिए सशर्त प्रकार (T extends U ? X : Y) का उपयोग करें और सटीक परिणामों के लिए यूनियन पर वितरण को समझें।

मूल सशर्त प्रकार

सशर्त प्रकार इस आधार पर दो प्रकारों में से एक लौटाता है कि T extends U सत्य है या नहीं।

type IsString<T> = T extends string ? true : false;

let a: IsString<string>;   // true
let b: IsString<number>;   // false

वितरण

नग्न प्रकार पैरामीटर T के साथ सशर्त प्रकार प्रत्येक यूनियन सदस्य पर चलता है और फिर परिणामों का यूनियन बनाता है।

type ToArray<T> = T extends any ? T[] : never;

type R1 = ToArray<string | number>; // string[] | number[]

वितरण रोकना

वितरण रोकने और यूनियन को एक संपूर्ण रूप में देखने के लिए T को टपल में लपेटें (जैसे, [T])।

type ToArrayNoDistrib<T> = [T] extends [any] ? T[] : never;

type R2 = ToArrayNoDistrib<string | number>; // (string | number)[]

व्यावहारिक बहिष्करण

कई उपयोगिता प्रकार वितरण पर निर्भर करते हैं (जैसे, Exclude, Extract)। आप आसानी से अपने रूपांतर बना सकते हैं।

type MyExclude<T, U> = T extends U ? never : T;

type R3 = MyExclude<"a" | "b" | "c", "b">; // "a" | "c"

सुझाव

सुझाव:

  • वितरण केवल तब होता है जब extends के बाईं ओर नग्न प्रकार पैरामीटर हो।
  • वितरण से बाहर निकलने के लिए उसे टपल में लपेटें।
  • अपनी समझ की पुष्टि करने के लिए छोटे उदाहरणों से परीक्षण करें।

वितरण परीक्षण

त्वरित परीक्षण: सशर्त प्रकार यूनियन पर वितरित क्यों होते हैं?

पुनरावलोकन

पुनरावलोकन: प्रकार-स्तर पर शाखा चुनने के लिए सशर्त प्रकार का उपयोग करें। समझें कि परिणाम यूनियन पर कब वितरित होते हैं और टपल में लपेटकर इसे कैसे बंद किया जा सकता है।

शुरुआत निःशुल्क

एआई शिक्षक के साथ TypeScript सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
101
पाठ
352

अक्सर पूछे जाने वाले प्रश्न

क्या “कंडीशनल प्रकार (परिचय) और यूनियन पर वितरण” पाठ निःशुल्क है?

हाँ—“कंडीशनल प्रकार (परिचय) और यूनियन पर वितरण” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और TypeScript Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। TypeScript Academy पाठ्यक्रम में कुल 3 पाठ शामिल हैं।

“कंडीशनल प्रकार (परिचय) और यूनियन पर वितरण” में मैं क्या सीखूँगा?

कंडीशनल प्रकार (T extends U ? X : Y) सीखें और जानें कि शक्तिशाली टाइप-स्तरीय लॉजिक के लिए वे यूनियन पर कैसे वितरित होते हैं। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ TypeScript Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या TypeScript Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर TypeScript Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 3 में से 2वाँ पाठ है।

“कंडीशनल प्रकार (परिचय) और यूनियन पर वितरण” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस TypeScript Academy पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर TypeScript Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. जेनेरिक इंटरफ़ेस और टाइप उपनाम
  2. कंडीशनल प्रकार (परिचय) और यूनियन पर वितरण
  3. डेटा मॉडल के लिए पुनः-उपयोग योग्य पैटर्न
← TypeScript Academy पर वापस जाएँ