TypeScript Academy · पाठ

डिफ़ॉल्ट प्रकार पैरामीटर

कोई आर्ग्युमेंट न दिए जाने पर वैकल्पिक प्रकार उपलब्ध कराएँ

पाठ 4, कुल 4 में से13 चरण

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

स्वागत है

डिफ़ॉल्ट प्रकार पैरामीटर तब फ़ॉलबैक प्रकार देते हैं जब कॉल करने वाला कोई प्रकार आर्ग्युमेंट निर्दिष्ट नहीं करता। वे जेनरिक API को अधिक सुविधाजनक बनाते हैं।

डिफ़ॉल्ट सिंटैक्स

डिफ़ॉल्ट सेट करने के लिए प्रकार पैरामीटर नाम के बाद `= DefaultType` जोड़िए।
interface Container<T = string> {
  value: T;
}
const c: Container = { value: 'hello' }; // T defaults to string
const n: Container<number> = { value: 42 };

जेनरिक फ़ंक्शन में डिफ़ॉल्ट

फ़ंक्शन प्रकार पैरामीटर में भी डिफ़ॉल्ट हो सकते हैं, हालांकि वे कम सामान्य हैं क्योंकि TypeScript आमतौर पर प्रकार का अनुमान लगा लेता है।
function createList<T = string>(): T[] { return []; }
const list = createList(); // T is string by default

बाधाओं के साथ डिफ़ॉल्ट

किसी प्रकार पैरामीटर में बाधा और डिफ़ॉल्ट, दोनों हो सकते हैं। डिफ़ॉल्ट को बाधा संतुष्ट करनी होगी।
interface Event<T extends object = Record<string, unknown>> {
  type: string;
  payload: T;
}

React-जैसे कंपोनेंट में डिफ़ॉल्ट

कंपोनेंट प्रॉप्स के लिए UI लाइब्रेरी जेनरिक में डिफ़ॉल्ट प्रकार पैरामीटर सामान्य हैं।
interface SelectProps<T = string> {
  options: T[];
  value: T;
  onChange: (val: T) => void;
}

एकाधिक डिफ़ॉल्ट

एकाधिक प्रकार पैरामीटर में से प्रत्येक के अपने डिफ़ॉल्ट हो सकते हैं।
type Pair<A = string, B = number> = { first: A; second: B };
const p: Pair = { first: 'hello', second: 42 }; // A=string, B=number

बाद के प्रकार पैरामीटर के लिए भी डिफ़ॉल्ट आवश्यक

यदि आप बाद के प्रकार पैरामीटर के लिए डिफ़ॉल्ट उपयोग करना चाहते हैं, तो डिफ़ॉल्ट के बिना पहले के सभी पैरामीटर निर्दिष्ट करने होंगे।
type Map<K = string, V = unknown> = Record<K extends string ? K : string, V>;
const m: Map = {}; // K=string, V=unknown by default

TypeScript डिफ़ॉल्ट को कब अनदेखा करता है

यदि TypeScript संदर्भ से प्रकार आर्ग्युमेंट का अनुमान लगा सकता है, तो डिफ़ॉल्ट दिए जाने पर भी वह अनुमानित प्रकार का उपयोग करता है।
function wrap<T = string>(val: T): T { return val; }
const n = wrap(42); // T is number, not string (inferred)

स्पष्ट ओवरराइड

स्पष्ट प्रकार आर्ग्युमेंट देने पर डिफ़ॉल्ट हमेशा ओवरराइड हो जाता है।
interface Box<T = string> { item: T; }
const numBox: Box<number> = { item: 100 }; // T explicitly number

क्लास जेनरिक में डिफ़ॉल्ट

जेनरिक क्लास में भी डिफ़ॉल्ट प्रकार पैरामीटर हो सकते हैं।
class Stack<T = unknown> {
  private items: T[] = [];
  push(item: T) { this.items.push(item); }
  pop(): T | undefined { return this.items.pop(); }
}

डिफ़ॉल्ट जेनरिक लाइब्रेरी का उपयोग आसान बनाते हैं

सामान्य उपयोग के मामलों में कॉल करने वालों को कम अतिरिक्त कोड लिखना पड़े, इसके लिए लाइब्रेरी लेखक डिफ़ॉल्ट प्रकार पैरामीटर का उपयोग करते हैं।

त्वरित जाँच

`interface Box` दिए जाने पर `const b: Box = { value: 99 }` में `.value` का प्रकार क्या है?

पुनरावलोकन

डिफ़ॉल्ट प्रकार पैरामीटर (T = DefaultType) तब फ़ॉलबैक प्रकार देते हैं जब कॉल करने वाला कोई प्रकार निर्दिष्ट नहीं करता। वे इंटरफ़ेस, क्लास परिभाषाओं और लाइब्रेरी API में कॉल करने वाले के अतिरिक्त कोड को कम करने के लिए सबसे उपयोगी होते हैं।
शुरुआत निःशुल्क

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

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

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

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

क्या “डिफ़ॉल्ट प्रकार पैरामीटर” पाठ निःशुल्क है?

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

“डिफ़ॉल्ट प्रकार पैरामीटर” में मैं क्या सीखूँगा?

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

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

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

“डिफ़ॉल्ट प्रकार पैरामीटर” पाठ पूरा करने में कितना समय लगता है?

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

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

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

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

  1. जेनेरिक फ़ंक्शन: प्रकार पैरामीटर
  2. जेनेरिक इंटरफ़ेस और प्रकार उपनाम
  3. extends से जेनेरिक सीमाएँ
  4. डिफ़ॉल्ट प्रकार पैरामीटर
← TypeScript Academy पर वापस जाएँ