डीस्ट्रक्चरिंग में डिफ़ॉल्ट मान
डिफ़ॉल्ट मानों को प्रकार एनोटेशन के साथ सुरक्षित रूप से मिलाएँ।
डीस्ट्रक्चरिंग में डिफ़ॉल्ट मान, CoddyKit पर TypeScript Academy का एक निःशुल्क पाठ है। यह 4 में से 3वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह TypeScript Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। TypeScript Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
रिक्त स्थान भरना
विघटन के डिफ़ॉल्ट मान तब वैकल्पिक मान देते हैं जब कोई प्रॉपर्टी या तत्व मौजूद न हो या undefined हो। TypeScript के प्रकार-अनुमान के साथ मिलकर वे वैकल्पिक कॉन्फ़िगरेशन को सहज और सुरक्षित बनाते हैं।
ऑब्जेक्ट के विघटन में डिफ़ॉल्ट मान
किसी बाइंडिंग के बाद = value लिखकर उसे वैकल्पिक मान दें। यदि प्रॉपर्टी मौजूद न हो या उसका मान undefined हो, तो उसकी जगह डिफ़ॉल्ट मान उपयोग किया जाता है।
const opts: { count?: number } = {}
const { count = 0 } = opts
console.log(count) // 0वैकल्पिक प्रॉपर्टीज़ के साथ डिफ़ॉल्ट मान
डिफ़ॉल्ट मान वैकल्पिक (?) प्रॉपर्टीज़ के साथ स्वाभाविक रूप से काम करते हैं। डिफ़ॉल्ट मान undefined वाली स्थिति हटा देता है, इसलिए परिणामी चर का प्रकार गैर-वैकल्पिक होता है।
interface Opts { retries?: number }
function connect(opts: Opts) {
const { retries = 3 } = opts
// retries is number, not number | undefined
return retries * 2
}
console.log(connect({}))डिफ़ॉल्ट मान और अनुमानित प्रकार
यदि आप प्रकार-टिप्पणी नहीं करते हैं, तो TypeScript चर का प्रकार डिफ़ॉल्ट मान से अनुमानित करता है। यहाँ 0, count को number बनाता है।
const settings: { count?: number; label?: string } = { label: "hi" }
const { count = 0, label = "none" } = settings
console.log(count, label) // 0 hiकेवल undefined से डिफ़ॉल्ट मान लागू होता है
एक सूक्ष्म बात: डिफ़ॉल्ट मान केवल undefined के लिए लागू होते हैं, 0, "" या null जैसे दूसरे असत्य मानों के लिए कभी नहीं। वे बिना बदले आगे चले जाते हैं।
const { x = 10 } = { x: 0 }
console.log(x) // 0, not 10 — 0 is not undefined
const { y = 10 } = { y: undefined as number | undefined }
console.log(y) // 10फ़ंक्शन पैरामीटरों में डिफ़ॉल्ट मान
विघटित पैरामीटरों के डिफ़ॉल्ट मान वैकल्पिक विकल्पों को आसानी से संभालते हैं। सिग्नेचर में ही हर फ़ील्ड का अपना वैकल्पिक मान दिया जा सकता है।
function draw({ x = 0, y = 0 }: { x?: number; y?: number }) {
return x + "," + y
}
console.log(draw({ x: 5 })) // 5,0पूरे पैरामीटर के लिए डिफ़ॉल्ट मान
कॉल करने वालों को तर्क वाला ऑब्जेक्ट पूरी तरह छोड़ने की अनुमति देने के लिए पैरामीटर को स्वयं {} का डिफ़ॉल्ट मान दें। इसके बिना, बिना किसी तर्क के कॉल करने पर त्रुटि आएगी।
function draw({ x = 0, y = 0 }: { x?: number; y?: number } = {}) {
return x + "," + y
}
console.log(draw()) // 0,0नाम बदलने के साथ डिफ़ॉल्ट मान
आप एक ही बाइंडिंग में नाम बदलकर डिफ़ॉल्ट मान दे सकते हैं: पहले नाम बदलें, फिर नए नाम के बाद डिफ़ॉल्ट मान जोड़ें।
const { count: total = 0 } = { } as { count?: number }
console.log(total) // 0गणना किए गए डिफ़ॉल्ट मान
डिफ़ॉल्ट मान कोई भी एक्सप्रेशन हो सकता है, यहाँ तक कि पहले की बाइंडिंग को संदर्भित करने वाला एक्सप्रेशन भी। इसका मूल्यांकन विलंब से होता है — केवल तब, जब मान वास्तव में अनुपस्थित हो।
function make({ width = 100, height = width }: { width?: number; height?: number } = {}) {
return width + "x" + height
}
console.log(make({ width: 50 })) // 50x50ऐरे के डिफ़ॉल्ट मान का पुनरावलोकन
डिफ़ॉल्ट मान ऐरे के विघटन में भी काम करते हैं और किसी तत्व के अनुपस्थित होने या undefined होने पर उसकी स्थिति के अनुसार लागू होते हैं।
const [a = 1, b = 2, c = 3] = [10, undefined]
console.log(a, b, c) // 10 2 3डिफ़ॉल्ट मान सबसे उपयोगी कब होते हैं
विकल्प वाले ऑब्जेक्ट के लिए डिफ़ॉल्ट मान आदर्श होते हैं: कॉल करने वाले केवल वही निर्दिष्ट करते हैं जिसकी उन्हें आवश्यकता है, और फ़ंक्शन उचित वैकल्पिक मान भर देता है। वे अनुमानित प्रकारों से undefined भी हटा देते हैं, जिससे फ़ंक्शन का मुख्य भाग सरल हो जाता है।
interface Config { debug?: boolean; level?: number }
const init = ({ debug = false, level = 1 }: Config = {}) => debug ? level : 0
console.log(init({ debug: true, level: 5 }))त्वरित जाँच
विघटन के डिफ़ॉल्ट मानों की अपनी समझ जाँचें।
पुनरावलोकन
विघटन के डिफ़ॉल्ट मान (= fallback) केवल तब लागू होते हैं जब कोई मान अनुपस्थित हो या undefined हो — अन्य असत्य मानों के लिए कभी नहीं। वे वैकल्पिक-प्रॉपर्टी के प्रकारों से undefined हटाते हैं, उनका अनुमान लगाया जा सकता है या उन पर प्रकार-टिप्पणी की जा सकती है, वे नाम बदलने का समर्थन करते हैं और पहले की बाइंडिंग को संदर्भित कर सकते हैं। विकल्प वाले ऑब्जेक्ट के लिए पैरामीटर का डिफ़ॉल्ट मान {} रखें, ताकि कॉल करने वाले उसे पूरी तरह छोड़ सकें।
एआई शिक्षक के साथ TypeScript सीखें — निःशुल्क
अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।
- पाठ्यक्रम
- 101
- पाठ
- 352
अक्सर पूछे जाने वाले प्रश्न
क्या “डीस्ट्रक्चरिंग में डिफ़ॉल्ट मान” पाठ निःशुल्क है?
हाँ—“डीस्ट्रक्चरिंग में डिफ़ॉल्ट मान” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और TypeScript Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। TypeScript Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
“डीस्ट्रक्चरिंग में डिफ़ॉल्ट मान” में मैं क्या सीखूँगा?
डिफ़ॉल्ट मानों को प्रकार एनोटेशन के साथ सुरक्षित रूप से मिलाएँ। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ TypeScript Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।
क्या TypeScript Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?
पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर TypeScript Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 3वाँ पाठ है।
“डीस्ट्रक्चरिंग में डिफ़ॉल्ट मान” पाठ पूरा करने में कितना समय लगता है?
CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।
क्या मैं इस TypeScript Academy पाठ में कोड लिख और चला सकता हूँ?
हाँ। हर TypeScript Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।
इस पाठ्यक्रम के सभी पाठ
- ऑब्जेक्ट डीस्ट्रक्चरिंग प्रकार
- ऐरे और टपल डीस्ट्रक्चरिंग
- डीस्ट्रक्चरिंग में डिफ़ॉल्ट मान
- नेस्टेड डीस्ट्रक्चरिंग पैटर्न