2011-02-08 16 views
5

मैं मानता हूं कि जावास्क्रिप्ट पुस्तकालयों के लिए नामस्थान का उपयोग करना आवश्यक है, लेकिन script टैग में HTML फ़ाइलों में रहने वाले उन कार्यों के बारे में क्या है? असल में ये "स्थानीय" फ़ंक्शंस हैं जिन्हें कभी भी किसी अन्य पेज के साथ साझा नहीं किया जाता है। क्या आप अभी भी उन लोगों के लिए नामस्थान का उपयोग करते हैं? यदि हां, तो क्या आप अपनी साझा कस्टम लाइब्रेरी के समान नामस्थान का उपयोग करते हैं?क्या स्थानीय जावास्क्रिप्ट कार्यों के लिए नामस्थान होना आवश्यक है?

उत्तर

1

आपको नामस्थान की आवश्यकता नहीं है, क्योंकि जैसा कि आप कहते हैं, कोई संभावित नामकरण संघर्ष नहीं है।

एकमात्र संभावित संघर्ष यह है कि यदि आप एक लाइब्रेरी आयात कर रहे हैं तो नामस्थानों का उपयोग नहीं करता है, और यह एक वेरिएबल प्रस्तुत करता है जो आपके द्वारा लिपि गए फ़ाइल में रखे गए नाम से टकराव करता है। लेकिन यदि आप सभी पुस्तकालयों में नेमस्पेस अभ्यास का पालन कर रहे हैं, तो इससे कोई फर्क नहीं पड़ता।

2

मैं कहूंगा कि एक स्थानीय नामस्थान तृतीय पक्ष जावास्क्रिप्ट पुस्तकालयों के साथ किसी भी संभावित टकराव के खिलाफ सुरक्षा में मदद कर सकता है, लेकिन यह अनिवार्य नहीं होना चाहिए।

1

सबसे पहले। एचटीएमएल में जावास्क्रिप्ट रखना कुछ ऐसा नहीं है जो आपको करना चाहिए। जावास्क्रिप्ट अलग फाइलों में जाना चाहिए। लोडर के स्पष्ट अपवाद के साथ, जैसे head.js या इसी तरह, यदि आप एक का उपयोग करते हैं।

मुझे व्यक्तिगत रूप से स्थानीय स्क्रिप्ट नामों की आवश्यकता नहीं है। ऐसा कभी नहीं हुआ कि मैंने लिखा एक स्क्रिप्ट मैंने किसी भी प्लगइन के साथ टक्कर लगी है।

+0

.js फ़ाइलों में सभी जावास्क्रिप्ट कोड रखने के संबंध में, इसका मतलब यह नहीं है कि लगभग हर स्टैंडअलोन HTML फ़ाइल की अपनी .js फ़ाइल होगी? क्या यह सड़क के नीचे रखरखाव की समस्या नहीं होगी? –

+2

@ टॉम टकर - आमतौर पर, आप सभी स्क्रिप्ट को एक या दो बड़ी फ़ाइलों में डाल देते हैं। यहां तक ​​कि यदि यह प्रत्येक पृष्ठ पर लागू नहीं होता है, तो यह केवल एक बार डाउनलोड हो जाता है। – aaronasterling

+2

हां, @ अरोर्नस्टरिंग सही है। यह वास्तव में रखरखाव आसान बनाता है। आपके पास प्रत्येक पृष्ठ के लिए एक अलग फ़ाइल नहीं है। आपके पास एक या दो फाइलें हैं जिनका उपयोग आपके सभी पृष्ठों द्वारा किया जाता है। आप वहां अपनी कार्यक्षमता लिखते हैं और एचटीएमएल लोड पर उनका उपयोग करता है। आपको http://articles.sitepoint.com/article/simply-javascript को देखना चाहिए – Krule

1

हालांकि यह अनिवार्य नहीं हो सकता है, वास्तव में उनको नाम देने का कोई कारण नहीं है। यह केवल मुद्दों को रोकने में मदद कर सकता है।

यहाँ नेमस्पेसिंग के विभिन्न तरीकों के बारे में स्क्रिप्ट गेम पसंद करने वाला पर एक अच्छा लेख है: http://msdn.microsoft.com/en-us/scriptjunkie/gg578608.aspx

1

यह जहां एचटीएमएल कि स्क्रिप्ट में एम्बेड कर रहे हैं से आ रहा है पर निर्भर रहना पड़ता है। यदि यह किसी संदर्भ में है जहां स्थानीय स्क्रिप्ट को नियंत्रित करने वाला कोड इस बात से अवगत होगा कि दूसरा क्या कर रहा है, तो मुझे लगता है कि नामस्थान की कोई आवश्यकता नहीं है।

यदि दूसरी ओर, स्क्रिप्ट एक सीएमएस की तरह कुछ के संदर्भ में चल रही हैं तो क्लाइंट साइड कोडर के बिना कोड की जटिलताओं को समझने के बिना स्थानीय जावास्क्रिप्ट को emmitting करने वाले विभिन्न सर्वर साइड प्लगइन्स हो सकते हैं। यहां तक ​​कि, अगर वह कोड सभी नामांकित है, तो आपको ठीक होना चाहिए। आकस्मिक रूप से भूलना एक var कीवर्ड हालांकि नामस्थान तोड़ सकता है।

सब कुछ, एक नामस्थान चीजों को चोट नहीं पहुंचाता है और यह मुश्किल नहीं है। जब जावास्क्रिप्ट में सभी मिश्रित नहीं होते हैं तो जावास्क्रिप्ट को बनाए रखना और सोचना बहुत आसान है।

संबंधित मुद्दे