⊗jsPmCdScp 134 of 505 menu

JavaScript में if-else में वेरिएबल्स का स्कोप

सरलता के लिए मान लें कि हमारे पास हमेशा निष्पादित होने वाली शर्त है:

if (true) { }

आइए निम्नलिखित कोड पर विचार करें:

if (true) { let res = '!'; } console.log(res);

जैसा कि आप देख रहे हैं, वेरिएबल res में मान '!' लिखा जाना चाहिए। हालाँकि, यदि इस कोड को चलाया जाता है, तो कंसोल में एरर दिखाई देगी!

बात यह है कि वेरिएबल्स, जिन्हें करली ब्रेसिज़ के अंदर घोषित किया गया है, केवल उन्हीं ब्रेसिज़ के अंदर दिखाई देते हैं, और बाहर दिखाई नहीं देते। वैज्ञानिक रूप से यहाँ वेरिएबल्स के स्कोप की बात की जा रही है।

यह कहा जा सकता है कि करली ब्रेसिज़ के अंदर घोषित वेरिएबल्स का स्कोप केवल वही करली ब्रेसिज़ होती हैं। हालाँकि, यदि वेरिएबल को करली ब्रेसिज़ के बाहर घोषित किया गया है, तो वह अंदर और बाहर दोनों जगह दिखाई देती है:

let res; // वेरिएबल बाहर घोषित की गई है if (true) { res = '!'; } console.log(res); // '!' आउटपुट करेगा

निम्नलिखित उदाहरण में वेरिएबल res में शर्त के आधार पर या तो मान 1, या मान 2 लिखा जाता है:

let num = 5; if (num >= 0) { let res = 1; } else { let res = 2; } console.log(res);

हालाँकि, यदि इस कोड को चलाया जाता है, तो कंसोल में एरर दिखाई देगी। जैसा कि आप अब समझ गए होंगे, पूरी बात वेरिएबल्स की विजिबिलिटी में है। समस्या के समाधान के लिए वेरिएबल को कंडीशन के बाहर घोषित करें:

let test = true; let res; // वेरिएबल को कंडीशन के बाहर घोषित करें if (test) { res = 1; } else { res = 2; } console.log(res); // 1 आउटपुट करेगा

नीचे दिए गए कोड के लेखक 18 वर्ष की आयु तक पहुँचने की जाँच करना चाहते थे। हालाँकि, कोड काम नहीं कर रहा है। कोड लेखक की गलती सुधारें। यहाँ समस्या वाला कोड है:

let age = 17; if (age >= 18) { let adult = true; } else { let adult = false; } console.log(adult);
हिन्दी
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
हम साइट के कार्य, विश्लेषण और व्यक्तिगतकरण के लिए कुकीज़ का उपयोग करते हैं। डेटा प्रसंस्करण गोपनीयता नीति के अनुसार किया जाता है।
सभी स्वीकार करें कॉन्फ़िगर करें अस्वीकार करें