"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > जावास्क्रिप्ट कंसोल वेरिएबल घोषणा का परिणाम \"अनिर्धारित\" क्यों होता है?

जावास्क्रिप्ट कंसोल वेरिएबल घोषणा का परिणाम \"अनिर्धारित\" क्यों होता है?

2024-11-02 को प्रकाशित
ब्राउज़ करें:378

Why Does JavaScript Console Variable Declaration Result in \

कंसोल पर जावास्क्रिप्ट वेरिएबल घोषणा का परिणाम "अपरिभाषित" क्यों होता है

जब सिंटैक्स var a का उपयोग करके जावास्क्रिप्ट कंसोल में एक वेरिएबल घोषित किया जाता है;, यह "अपरिभाषित" प्रिंट करता है। यह व्यवहार आश्चर्यजनक हो सकता है और इसे अक्सर स्टैक ओवरफ़्लो पोस्ट में संबोधित किया जाता है। हालाँकि, ये चर्चाएँ पूरी तरह से यह समझाने में विफल हैं कि ऐसा क्यों होता है।

कंसोल का व्यवहार जावास्क्रिप्ट द्वारा अभिव्यक्तियों का मूल्यांकन करने के तरीके का प्रत्यक्ष परिणाम है। कथन var a; का मूल्यांकन करते समय, जावास्क्रिप्ट इसे अपने आप में एक अभिव्यक्ति मानता है और अपना परिणाम देता है, जो वास्तव में "अपरिभाषित" है। प्रारंभिक मान के साथ, जैसे कि var a = 3। आश्चर्यजनक रूप से, जावास्क्रिप्ट में सभी परिवर्तनीय घोषणा कथन (var और फ़ंक्शन दोनों) "असली" परिणाम के साथ कोई अन्य कथन होने पर "अपरिभाषित" लौटाते हैं।

उदाहरण के लिए :

> var a = 3; अपरिभाषित > वर ए = 3; ए = 4; 4 > वर ए = 3; ए = 4; वर ए = 5; फ़ंक्शन f() {}; 4

> var a = 3;
undefined

> var a = 3; a = 4;
4

> var a = 3; a = 4; var a = 5; function f() {};
4

यदि मूल्यांकन किए गए कार्यक्रम का समापन मूल्य खाली है तो "अपरिभाषित" लौटाता है।
  • var a = 4 स्टेटमेंट का मूल्यांकन (सामान्य, खाली, खाली) देता है, जो "अपरिभाषित" लौटाने के मानदंड को पूरा करता है।

हालाँकि, eval यह भी निर्दिष्ट करता है कि यदि मूल्यांकन किए गए प्रोग्राम का पूर्णता मान खाली नहीं है, तो अंतिम कथन का मान वापस कर दिया जाता है। अंतिम उदाहरण में, a = 4 अंतिम कथन है, इसलिए इसका मान (4) लौटाया जाता है। भाव. यह व्यवहार भ्रमित करने वाला हो सकता है, विशेष रूप से वेरिएबल्स को प्रारंभिक मान निर्दिष्ट करते समय, लेकिन यह जावास्क्रिप्ट अभिव्यक्तियों और कथनों के अंतर्निहित मूल्यांकन तंत्र से उत्पन्न होता है।

विज्ञप्ति वक्तव्य इस लेख को पुन: प्रस्तुत किया गया है: 1729384697 यदि कोई उल्लंघन है, तो कृपया इसे हटाने के लिए [email protected] पर संपर्क करें।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3