& lt; स्क्रिप्ट & gt; नाम = "टिम"; समारोह नमस्कार () {console.log (नाम); Var नाम = "डेविड"; } नमस्कार(); & Lt; / स्क्रिप्ट & gt; परिणाम "अपरिभाषित" क्यों दिखाता है? मैं टिम या डेविड की उम्मीद करता हूं।
आप घोषणा करते हुए पहले 'नाम' एक वैश्विक चर है फ़ंक्शन के अंदर, आप इसे फिर से घोषित करते हैं, इसलिए आप वैश्विक एक की दृश्यता खो देते हैं लेकिन आप परिभाषित होने से पहले चर का उपयोग करें।
नाम = "टिम"; // वैश्विक नाम यहां समारोह greet () {// var name; // यहां नाम स्वचालित रूप से घोषित किया गया है (क्योंकि उत्थापन की वजह से) लेकिन अपरिभाषित console.log (name); // यहां पर आप नाम का उपयोग नाम से पहले नामित किया जाता है var name = "David"; // यहाँ नाम परिभाषित किया गया है) नमस्कार (); जावास्क्रिप्ट के कार्यों में गुंजाइश है, यह महत्वपूर्ण है 'Javascript hoisting' के लिए Google यह मदद करेगा।
No comments:
Post a Comment