javascript - Uncaught ReferenceError: {var} is not defined. Files are created separately -


इस सवाल का पहले से ही एक उत्तर है: < / P>

  • 20 उत्तरों

मुझे क्यों अनक्यूट रिफरेंसरॉल: मुझे मेरी जावास्क्रिप्ट फ़ाइल में परिभाषित नहीं किया गया है?

तो यहां बताया गया है कि मैंने इसे कैसे किया।

app.js

  $ (फ़ंक्शन () {var i = 1;});  

कुछ.जेएस

  $ (फ़ंक्शन () {अलर्ट (i);});  

और यहां बताया गया है कि मैं अपनी फाइल कैसे अनुक्रमित करता हूं।

  // यहां jquery शामिल है & lt; script src = "/ app.js" type = "javascript / पाठ "& gt; & lt; / स्क्रिप्ट & gt; & Lt; script src = "/ some.js" प्रकार = "javascript / text" & gt; & lt; / स्क्रिप्ट & gt;  

मैं कैसे app.js से या अन्य जावास्क्रिप्ट फ़ाइलों से चर को निष्पादित या एक्सेस कर सकता हूं? मैंने सोचा था कि उन्हें क्रम में सूचीबद्ध होना चाहिए। मुझसे कहां गलती हो गई? कोई भी सहायताकाफी प्रशंसनीय होगी। धन्यवाद

समस्या है कि आप एक स्थानीय क्षेत्र में i परिभाषित कर रहे हैं।

आपको इस तरह की कोशिश करनी चाहिए

  & lt; script type = "text / javascript" & gt; Var i = 1; // i एक वैश्विक क्षेत्र में & Lt; / स्क्रिप्ट & gt; & LT; स्क्रिप्ट & gt; चेतावनी: (i); & Lt; / स्क्रिप्ट & gt;  

यदि आप i को फिर से कहीं और परिभाषित करेंगे, तो संघर्ष हो सकता है तो जैसे ही संघर्षों से बचने के लिए नामस्थान को परिभाषित करने का एक बेहतर तरीका है।

  & lt; script type = "text / javascript" & gt; Var firstScript = {}; // यह पहली स्क्रिप्ट के लिए नामस्थान होगा firstScript.i = 1; & Lt; / स्क्रिप्ट & gt; & LT; स्क्रिप्ट & gt; चेतावनी (firstScript.i); & Lt; / स्क्रिप्ट & gt;  

Comments

Popular posts from this blog

java - org.apache.http.ProtocolException: Target host is not specified -

java - Gradle dependencies: compile project by relative path -

ruby on rails - Object doesn't support #inspect when used with .include -