JavaScript Academy · पाठ

?. ऑपरेटर के साथ वैकल्पिक चेनिंग

बहुत अंदर तक स्थित प्रॉपर्टीज़ को सुरक्षित रूप से ऐक्सेस कीजिए।

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

?. ऑपरेटर के साथ वैकल्पिक चेनिंग, CoddyKit पर JavaScript Academy का एक निःशुल्क पाठ है। यह 4 में से 1वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह JavaScript Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। JavaScript Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

समस्या

undefined या null वाली वस्तु की प्रॉपर्टी पढ़ने पर TypeError आता है। वैकल्पिक चेनिंग आपको नेस्टेड values को सुरक्षित रूप से पढ़ने देती है।

const user = {};
console.log(user.profile && user.profile.name);

?. ऑपरेटर

वैकल्पिक चेनिंग ऑपरेटर ?. रुक जाता है और null या undefined होने पर undefined लौटाता है, बजाय त्रुटि उत्पन्न करने के।

const user = {};
console.log(user.profile?.name); // undefined, no error

गहरी प्रॉपर्टी पढ़ना

हर स्तर पर मैन्युअल सुरक्षा-जाँच किए बिना गहरी संरचनाओं में जाने के लिए आप कई ?. चरणों को जोड़ सकते हैं।

const data = { user: { address: { city: "Paris" } } };
console.log(data.user?.address?.city); // "Paris"

शॉर्ट-सर्किट होना

यदि चेन की कोई भी कड़ी nullish है, तो पूरी expression तुरंत undefined पर रुक जाती है और बाकी का मूल्यांकन नहीं होता।

const data = { user: null };
console.log(data.user?.address?.city); // undefined

केवल Nullish मान इसे सक्रिय करते हैं

?. केवल null या undefined पर शॉर्ट-सर्किट करता है। 0 या "" जैसे अन्य असत्य-सदृश मान वास्तविक values हैं और उन तक सामान्य रूप से पहुँचा जाता है।

const obj = { count: 0 };
console.log(obj.count?.toString()); // "0"

&& से तुलना

?. से पहले लोग && सुरक्षा-जाँच को चेन करते थे। समान उद्देश्य के लिए वैकल्पिक चेनिंग अधिक छोटी और स्पष्ट है।

const u = { profile: { name: "Ada" } };
const a = u && u.profile && u.profile.name;
const b = u?.profile?.name;
console.log(a, b);

कॉल के बाद चेनिंग

आप method call के बाद भी चेनिंग जारी रख सकते हैं और लौटाए गए मान की प्रॉपर्टी तक सुरक्षित रूप से पहुँच सकते हैं।

const config = { get: () => ({ port: 8080 }) };
console.log(config.get()?.port); // 8080

चेन के बीच में शॉर्ट-सर्किट

यदि बीच की कोई कड़ी nullish है, तो मूल्यांकन तुरंत रुक जाता है, भले ही बाद की कड़ियाँ अन्यथा functions को कॉल करतीं।

const obj = { a: null };
console.log(obj.a?.b.c.d); // undefined, never touches b/c/d

असाइनमेंट के लिए नहीं

वैकल्पिक चेनिंग केवल पढ़ने के लिए है। आप वैकल्पिक चेन को कोई मान नहीं दे सकते; = के बाईं ओर यह वाक्यविन्यास त्रुटि है।

const o = { x: 1 };
// o?.x = 5; // SyntaxError
o.x = 5;
console.log(o.x);

Arrays के साथ मिलाकर उपयोग

यह ब्रैकेट से पहुँच के साथ भी काम करता है, जिसे आगे विस्तार से बताया जाएगा। वही nullish-सुरक्षा यहाँ भी लागू होती है।

const state = { items: ["a", "b"] };
console.log(state.items?.[0]); // "a"

अत्यधिक उपयोग से बचना

?. का उपयोग केवल वहीं करें जहाँ किसी value का न मिलना स्वाभाविक हो सकता है। इसका अत्यधिक उपयोग उन त्रुटियों को दबाकर समस्याएँ छिपा सकता है जिन्हें आप वास्तव में देखना चाहते हैं।

const order = { total: 42 };
console.log(order.total?.toFixed(2)); // "42.00"

त्वरित जाँच

परिणाम का अनुमान लगाइए।

पुनरावलोकन

?. ऑपरेटर प्रॉपर्टी को सुरक्षित रूप से पढ़ता है: यदि बाईं ओर का मान null या undefined है, तो यह त्रुटि उत्पन्न करने के बजाय undefined लौटाता है और चेन के बाकी हिस्से को शॉर्ट-सर्किट कर देता है। इसे केवल nullish values सक्रिय करती हैं, 0 या "" नहीं, और इसे असाइनमेंट लक्ष्य के रूप में उपयोग नहीं किया जा सकता।

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

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

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

पाठ्यक्रम
59
पाठ
200

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

क्या “?. ऑपरेटर के साथ वैकल्पिक चेनिंग” पाठ निःशुल्क है?

हाँ — JavaScript Academy अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “?. ऑपरेटर के साथ वैकल्पिक चेनिंग” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। JavaScript Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“?. ऑपरेटर के साथ वैकल्पिक चेनिंग” में मैं क्या सीखूँगा?

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

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

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

“?. ऑपरेटर के साथ वैकल्पिक चेनिंग” पाठ पूरा करने में कितना समय लगता है?

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

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

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

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

  1. ?. ऑपरेटर के साथ वैकल्पिक चेनिंग
  2. ?? के साथ Nullish Coalescing
  3. ?. और ?? को मिलाना
  4. वैकल्पिक कॉल और इंडेक्स ऐक्सेस
← JavaScript Academy पर वापस जाएँ