वेबसाइट बनाते समय जावास्क्रिप्ट उपयोग को कम करना एक आम बात है? [बन्द है]


32

मैं लगभग 10 वर्षों से वेब डेवलपर हूं और जब भी संभव हो, तो जावास्क्रिप्ट का उपयोग नहीं करने की कोशिश करने की आदत डाल ली है। मैं यहां वेब ऐप्स बनाने की बात नहीं कर रहा हूं, लेकिन डेटाबेस संचालित वेबसाइट्स।

क्या यह एक अच्छा / सम्मानित दृष्टिकोण है?


6
मैं मानक जावास्क्रिप्ट को अक्षम करता हूं और noscript मुझे बताता है कि क्या स्रोत जावास्क्रिप्ट लोड किए गए हैं। एक वेबसाइट के लिए 10 से अधिक माध्यमिक स्रोतों से जावास्क्रिप्ट लोड करना असामान्य नहीं है, जो बदले में तृतीयक स्रोतों से जावास्क्रिप्ट भी लोड करता है। और कुल मिलाकर 20 से अधिक बाहरी स्रोतों से जावास्क्रिप्ट लोड करने के लिए पृष्ठ के लिए यह असामान्य नहीं है। तो मैं कहूंगा: जावास्क्रिप्ट का उपयोग कम से कम करना खिड़की से बाहर है।
पीटर बी

9
मैंने देखा कि आप जितनी अधिक जावास्क्रिप्ट पर भरोसा करते हैं, आपकी साइट उतनी ही कम नेविगेशन-अनुकूल और एसईओ-अनुकूल होगी। मैं यह नहीं गिन सकता कि "जावास्क्रिप्ट लिंक्स" और इस तरह की वजह से मैंने कितनी वेबसाइटें छोड़ीं।
BiAiB

1
मैंने पाया, कि इंटरनेट पर बहुत अधिक जावास्क्रिप्ट है। समस्याएं हैं: 1) सरल इंडेक्सर्स जेएस को नहीं समझते हैं, 2) जेएस की बड़ी मात्रा में सीपीयू 3 जलता है) कुछ प्लेटफार्मों में अभी भी जेएस (फोन, लिंक ब्राउज़र) नहीं हैं। अतः, अनावश्यक व्यवहार होने पर js से बचना चाहिए।
permeakra

वीक का यह सवाल क्यों है? मैं इसे स्पष्ट नहीं और रचनात्मक नहीं मानूंगा। सामान्य तौर पर, "मुझे एक्स का उपयोग करना चाहिए?" इस साइट पर प्रश्नों की सराहना नहीं की जाती है। शायद कोई मुझे ज्ञान दे सकता है।
मार्क ई। हासे

Microsoft वेब स्टैक में ASP.NET और SharePoint में हर जगह बटन क्लिक के लिए JS पर निर्भर MVC के साथ (अब तक) है। तो नहीं, इसका उपयोग कम से कम करने के लिए सामान्य नहीं है।
ग्राहम

जवाबों:


51

यह सभी प्रकार के कोड को कम करने के लिए अधिकांश प्रोग्रामर की वृत्ति है । कम कोड, कम जटिलताएं और उक्त कोड में संभावित त्रुटि के कम अंक। यह नियम जावास्क्रिप्ट के साथ-साथ अन्य भाषाओं पर भी लागू होता है। आप सिर्फ परंपरा को बरकरार रख रहे हैं।

HTML पृष्ठों में आवश्यकतानुसार / वांछित के रूप में जावास्क्रिप्ट का उपयोग करें ... लेकिन इसका उपयोग करने का कोई कारण नहीं है जब इसकी वास्तव में आवश्यकता न हो।


9
अधिक कोड से बचने के लिए जावास्क्रिप्ट को सामान्य वृत्ति से अलग मामला है। जेएस के साथ यह विकास की जटिलता को कम करने के बारे में नहीं है; आपके उपयोगकर्ताओं के साथ संगतता के वास्तविक मुद्दे हैं।
झॉकिंग

34

10 साल पहले, यह एक अच्छा विचार हो सकता है। आजकल इंटरनेट के अधिकांश भाग (- कम से कम कुछ बहुत लोकप्रिय हिस्से -) लगभग अनुपयोगी हो गए हैं, या केवल एक बहुत ही सीमित कार्यक्षमता प्रदान करते हैं, जब ब्राउज़र में जावास्क्रिप्ट अक्षम करते हैं। तो IMHO आज आप अपने उपयोगकर्ताओं को जावास्क्रिप्ट सक्षम करने की उम्मीद कर सकते हैं।

और ब्राउज़र असंगतताओं को प्राप्त करने के लिए JQuery जैसी बहुत सारी रूपरेखाएँ हैं। IMHO आज कोई वास्तविक कारण नहीं है कि आपको अपनी वेबसाइट के लिए जावास्क्रिप्ट का उपयोग न करके खुद को प्रतिबंधित करना चाहिए - केवल कारण यह हो सकता है कि आपके पास इसका कोई उपयोग नहीं है।

संपादित करें: एक अलग प्रश्न यह है: यदि आपको अपने वेब साइट की कुछ न्यूनतम कार्यक्षमता प्रदान करनी चाहिए, जब आपके आगंतुक जेएस सक्षम नहीं होते हैं - तो यह ज्यादातर एक अच्छा विचार है, क्योंकि कुछ टिप्पणीकारों ने बताया है।

EDIT2: निश्चित रूप से हर वेब साइट के लिए, उपयोगकर्ता-मित्रता, खोज-इंजन-अनुकूलता और विकास के प्रयासों के बीच एक संतुलन खोजना होगा। IMHO आज जावास्क्रिप्ट उस संतुलन को बेहतर बनाने में मदद कर सकता है - अगर बुद्धिमानी से उपयोग किया जाए। कहा कि, मुझे लगता है कि उस संतुलन को बनाए रखने के लिए आज जावास्क्रिप्ट उपयोग को कम से कम करने की आवश्यकता नहीं है। देखभाल के साथ इसका उपयोग करें, और इसे प्रदर्शन न करें।


17
यहाँ कुछ: SEO, वेब एग्रीगेटर्स, स्क्रीन रीडर, NoScript, कर्ल, मोबाइल ब्राउज़र हैं। मैं डिफ़ॉल्ट रूप से स्क्रिप्ट को अक्षम करता हूं, और अधिकांश इंटरनेट अभी भी ठीक काम करता है।
tdammers

7
यदि कोई साइट जावास्क्रिप्ट के बिना उपयोग करने योग्य नहीं है, तो इसे Google द्वारा प्रभावी रूप से क्रॉल नहीं किया जा सकता है, और यह एक Restful संदर्भ में उपयोग करने योग्य हो भी सकता है और नहीं भी। यहां तक ​​कि फेसबुक पर जावास्क्रिप्ट के बिना कम से कम न्यूनतम प्रयोग करने योग्य है
गॉर्डोनम

9
मैं यहां बताए गए अधिकांश बातों से सहमत हूं, लेकिन मैं इस विचार पर बहुत जोर देता हूं कि एक साइट "जावास्क्रिप्ट के बिना कम से कम न्यूनतम प्रयोज्य" होनी चाहिए। यह गलत है: यह जावास्क्रिप्ट के बिना अधिकतम उपयोग करने योग्य होना चाहिए ।
जोर्ग डब्ल्यू मित्तग

4
@ JörgWMittag यदि आप एक वेब तकनीक को अक्षम करने जा रहे हैं, तो आपको वेबसाइट के पूर्ण लाभ प्राप्त करने की उम्मीद नहीं करनी चाहिए। परिदृश्य अलग-अलग हैं, लेकिन अगर मैं एक वेब ऐप बना रहा हूं, तो शायद मैं अपने उपयोगकर्ताओं के अल्पसंख्यक के लिए पूरी अनुकूलता में अपना समय बर्बाद नहीं कर रहा हूं जो 21 वीं सदी में जाने से इनकार करते हैं। मैं अपनी अधिकांश परियोजनाओं में IE 6 का समर्थन करने के तरीके के समान नहीं हूं।
टॉम मार्थेनल

2
यह सभी उपयोग के मामलों का समर्थन करने के लिए केवल profesional है। यदि आप इसे याद करते हैं, तो यह ठीक है, हर कोई एक समय में एक बार गलती करता है, लेकिन उनकी उपेक्षा करना एक अलग समस्या है। जेएस के बिना 100% वेबसाइटों को विकसित करने के लिए मैं सभी हूं, और इसे काम करने के बाद, कार्यों को सुव्यवस्थित करने और यूएक्स को बेहतर बनाने के लिए जेएस जोड़ें।
Spidey

13

जावास्क्रिप्ट के बिना इस्तेमाल किया जा सकता है कि एक साइट होने का मतलब है कि यह व्यापक संभव दर्शकों के लिए उपलब्ध है। हालांकि यह सच है कि अधिकांश ब्राउज़र जावास्क्रिप्ट का समर्थन करते हैं और अधिकांश उपयोगकर्ता इसे डिफ़ॉल्ट रूप से छोड़ देते हैं, आप निश्चित रूप से उस पर भरोसा नहीं कर सकते। सब कुछ नहीं जो आपकी साइट तक पहुंचता है सब के बाद एक ब्राउज़र है; यदि आप चाहते हैं कि आपकी साइट Google जैसे खोज इंजन द्वारा ठीक से अनुक्रमित हो, तो GoogleBot को जावास्क्रिप्ट के बिना आपकी साइट को नेविगेट करने में सक्षम होने की आवश्यकता है।

वेब ब्राउज़िंग सॉफ़्टवेयर के विशेषज्ञ टुकड़े भी हैं जहाँ जावास्क्रिप्ट अनुपलब्ध है या अपेक्षा के अनुरूप काम नहीं करता है। उदाहरण के लिए, नेत्रहीनों द्वारा उपयोग किया जाने वाला स्क्रीन-रीडिंग या ब्रेल सॉफ्टवेयर। ऐसे वातावरण भी हैं जहाँ मेमोरी बाधित होती है और भारी मात्रा में जावास्क्रिप्ट होने से ब्राउज़िंग अनुभव अप्रिय या अव्यवहारिक हो सकता है, जैसे कि स्मार्टफोन ब्राउज़र।

आपको "प्रगतिशील वृद्धि" की अवधारणा पर ध्यान देना चाहिए, जहां आप जावास्क्रिप्ट के बिना काम करने के लिए एक साइट का निर्माण करते हैं, फिर उपयोगकर्ता अनुभव को बेहतर बनाने के लिए शीर्ष पर एक जावास्क्रिप्ट परत जोड़ें। इस तरह आपके पास एक ऐसी साइट होगी जो बिना जावास्क्रिप्ट के लोगों के लिए कम से कम उपयोग करने योग्य है।

आपको हर संभव सुविधा प्रदान करने के लिए प्रयास करने की आवश्यकता नहीं है जिसे आप जावास्क्रिप्ट के साथ गैर-जावास्क्रिप्ट ब्राउज़रों पर लागू करने की योजना बना रहे हैं, लेकिन यह अभी भी कम से कम जावास्क्रिप्ट के बिना उपलब्ध बुनियादी उपयोग के मामलों को छोड़ने के लिए महत्वपूर्ण है। साइट को ब्राउज़ करने में सक्षम होना स्पष्ट रूप से सूची में सबसे ऊपर है, लेकिन यदि आप ई-कॉमर्स साइट का निर्माण कर रहे हैं, तो चेकआउट प्रक्रिया को जावास्क्रिप्ट-निर्भर बनाना मूर्खतापूर्ण होगा क्योंकि यह आपकी बिक्री पर खर्च कर सकता है।


4
पूर्ण रूप से। जावास्क्रिप्ट का उपयोग मसाले के रूप में किया जाना चाहिए, न कि मुख्य पाठ्यक्रम के रूप में।
२dal

9

अन्य जवाब "मैं कभी जावास्क्रिप्ट का उपयोग नहीं करना चाहिए" पर ध्यान केंद्रित करने लगता है, इसलिए मुझे लगता है कि वे इस बिंदु को याद कर रहे हैं। यदि आपको इसकी आवश्यकता नहीं है तो आपको जावास्क्रिप्ट का उपयोग नहीं करना चाहिए। कुछ लोग हर चीज के लिए जावास्क्रिप्ट का उपयोग करते हैं :

  • हॉवर प्रभाव (सीएसएस होना चाहिए)
  • AJAX ( hrefउचित होने पर होना चाहिए )
  • पोजिशनिंग (सीएसएस होना चाहिए)

लाभ इस प्रकार हैं:

  • साइट तेजी से प्रदर्शित होती है
  • अधिकांश समय सीएसएस जावास्क्रिप्ट की तुलना में काफी कम जटिल है
  • बैकअप hrefलिंक होने से खोज इंजन, उन उपयोगकर्ताओं को मदद मिलती है जो अन्य टैब में लिंक खोलना चाहते हैं, और जो उपयोगकर्ता जावास्क्रिप्ट से नफरत करते हैं

बेशक, AJAX बहुत अच्छा है, और इसलिए गतिशील पृष्ठ हैं, इसलिए उन चीजों को सिर्फ इसलिए फेंक न दें क्योंकि कुछ लोगों को उनकी आवश्यकता नहीं है।

मेरा कहना है, जावास्क्रिप्ट के बिना चीजों को कैसे करना है, यह सीखना अच्छा है, जावास्क्रिप्ट को कम करना अच्छा है, और जब जावास्क्रिप्ट काम नहीं करता है तो बैकअप होना अच्छा है, लेकिन सुविधाओं से बचने का कोई कारण नहीं है क्योंकि उन्हें जावास्क्रिप्ट की आवश्यकता होती है।


1
मुझे याद है कि बहुत साल पहले कुछ सलाह दी जा रही थी, के बारे में (उस समय क्या कहा जाता था) मैन मशीन इंटरफेस: "सिर्फ इसलिए कि आप कर सकते हैं, इसका मतलब आपको नहीं करना चाहिए" यह अत्यधिक आकर्षक एनीमेशन वाली वेबसाइटों की एक अधिकतम संख्या है, ध्वनि और इस तरह बोर्ड पर ले जाना चाहिए।
एंड्रयू

8

अनावश्यक कार्यक्षमता, अवधि से बचने के लिए यह एक अच्छा विचार है। JQuery जैसे फ्रेमवर्क तामझाम को जोड़ने के लिए अविश्वसनीय रूप से आसान बनाते हैं जो जोड़ने के लिए समझ में आता है, लेकिन कभी-कभी नहीं। उदाहरण के लिए:

क्या आपको वास्तव में चेतन करने की आवश्यकता है?

... और ...

क्या इस तरह के तुच्छ चयनकर्ता के लिए वास्तव में संपूर्ण DOM की आवश्यकता है? क्या आप इसे संदर्भ का उपयोग करते हुए सीमित कर सकते हैं, और क्या हमें इसकी आवश्यकता है?

मैं जेएस का उपयोग करने से नहीं बचूंगा, लेकिन मैं ध्यान रखता हूं कि अप्रिय न हो, जबकि धीमी मशीनों की तलाश है। वही सीएसएस 3 में हमें मिलने वाले कुछ फैंसी नए सामानों के साथ सच है - जैसे ड्रॉप शैडो ... यदि अत्यधिक उपयोग किया जाता है तो वे किसी को कम शक्ति वाली मशीन पर बना सकते हैं जो वास्तव में बुरा अनुभव है।

इसका अपवाद विभिन्न प्रकार के उपकरणों के लिए फ्रंट एंड कंट्रोल लिखना हो सकता है, जहां उन्हें जेएस अक्षम (शायद डेटा सेंटर प्रबंधन नेटवर्क पर कोई सख्त सुरक्षा नीति नहीं जेएस निर्धारित करता है) के साथ बिल्कुल काम करना चाहिए। तो उपरोक्त जो कुछ भी आपके पास है आवश्यकताओं के संदर्भ में लिया जाना चाहिए।


6

मेरा मानना ​​है कि एक अपेक्षाकृत नया और युवा वेब डेवलपर (लगभग 4 साल) होने के नाते, मुझे इस पर बहुत शोध करना पड़ा क्योंकि जावास्क्रिप्ट हर जगह है।

मैं अपनी परियोजनाओं पर क्या करने की कोशिश करता हूं, यह सुनिश्चित करने के लिए कि साइट जावास्क्रिप्ट के बिना काम करती है, फिर जावास्क्रिप्ट जोड़ें जहां यह समझ में आता है (ग्राहक पक्ष सत्यापन, यूआई सुधार, आदि)। यह एक प्रकार की प्रगतिशील वृद्धि है और यह एसईओ, विकलांग जावास्क्रिप्ट और पुराने ब्राउज़र असंगतताओं का ध्यान रखता है।

एसओ पर भी यही सवाल पूछा गया है, लेकिन मैं अपने प्यार के लिए याद नहीं रख सकता।


5

जावास्क्रिप्ट का उपयोग कई मामलों में सीमित किया जा सकता है:

  • मान्यकरण। यह सर्वर-साइड पर किया जाना है। कभी-कभी वेब एप्लिकेशन में त्वरित क्लाइंट-साइड सत्यापन होता है, लेकिन यह अकेले पर्याप्त नहीं है।
  • अत्यंत महत्वपूर्ण कार्य। उपयोगकर्ता अपने ब्राउज़र की स्क्रिप्ट को अक्षम करने का विकल्प चुन सकते हैं, इसलिए जेएस कोड बिल्कुल भी काम नहीं करेगा। यदि आप यह सुनिश्चित करना चाहते हैं कि किसी भी ब्राउज़र पर किसी भी मामले में कुछ काम करेगा, तो इसे जेएस पर भरोसा न करें।
  • स्पीड। JS कोड क्लाइंट को भेजा जाना है, और जितना अधिक कोड आप लिखते हैं, उतना अधिक समय लगेगा। हालांकि कोड की छोटी मात्रा का कोई व्यावहारिक प्रभाव नहीं होगा।

JS में सुविधाओं का एक विशाल समूह है, जिसे सर्वर-साइड कोड द्वारा प्रतिस्थापित नहीं किया जा सकता है। उपरोक्त के अलावा, मुझे नहीं लगता कि जेएस उपयोग को सीमित करने के लिए कोई उचित तर्क होगा।


5

" डेटाबेस संचालित वेबसाइटें " उत्तर की कुंजी है। वेबसाइट बनाने के दो तरीके हैं, और जावास्क्रिप्ट की मात्रा की अनुमति उस पर निर्भर करती है जिस पर आप उपयोग कर रहे हैं, वास्तव में। आप बना सकते हैं:

  1. सामग्री केंद्रित वेबसाइटें । पहले मामले में, जादुई शब्द "प्रगतिशील वृद्धि" हैं; जावास्क्रिप्ट कार्यों को सीमित करें जो सादे HTTP के माध्यम से सामग्री तक क्लासिक पहुंच के साथ आपूर्ति की जा सकती है।

  2. वेब अनुप्रयोग । एप्लिकेशन के लिए, आप इसके बजाय एक सॉफ़्टवेयर प्लेटफ़ॉर्म के रूप में वेब का उपयोग कर रहे हैं। उपलब्ध सॉफ़्टवेयर पर एप्लिकेशन कुछ मान्यताओं पर भरोसा करते हैं - आधुनिक ब्राउज़र, लोकप्रिय जावास्क्रिप्ट लाइब्रेरी के नवीनतम संस्करण, माउस के साथ डेस्कटॉप एक्सेस और / या मल्टी-टच के साथ टैबलेट।

सॉफ्टवेयर प्लेटफॉर्म के रूप में वेब

यदि आप वास्तव में किसी एप्लिकेशन का निर्माण कर रहे हैं, तो न्यूनतम एक्सेस आवश्यकताएं ठीक हैं - आप उन्नत सुविधाओं को प्राप्त करने के लिए कुछ विशिष्ट प्लेटफॉर्म को लक्षित करते हैं जो अन्यथा निर्मित नहीं किए जा सकते। यह सिर्फ पायथन या जावा या .Net के लिए विकसित होने जैसा है। HTML5 जैसे buzzwords और आपको "मूर्ख कहीं भी चलाने" का वादा न करें; जब तक पूरा प्लेटफ़ॉर्म उन पर समर्थित हो, तब तक आप डिवाइस के बीच पोर्टेबल कोड रख सकते हैं। विकास के ढेर में कोई भी बदलाव, और सॉफ्टवेयर टूट जाएगा।

इस प्रकार भुगतान करने की कीमत यह है कि आप एक चलते लक्ष्य का पीछा कर रहे हैं, क्योंकि मंच के नए संस्करण जारी किए गए हैं; प्लेटफ़ॉर्म के विकसित होते ही आपको अपने ऐप को काम करने के लिए कैच-अप खेलना होगा। आपको मिलने वाला एकमात्र लाभ आपके ऐप के लिए एक अर्ध-सार्वभौमिक वितरण तंत्र है जो पैकेजों या एप्लिकेशन स्टोरों पर निर्भर नहीं करता है; लेकिन आप उस मुख्य विशेषता को खो देते हैं जो पिछले नेटवर्क वाले कंप्यूटर सिस्टम से वेब को अलग करती है।

सामग्री वितरण के रूप में वेब

सामग्री-केंद्रित वेबसाइटें एक अलग जानवर हैं; वे क्लासिक वर्ल्ड वाइड वेब की परंपरा में हैं। सामग्री को ग्राहक द्वारा शिथिल व्याख्या की जाती है, जो प्रस्तुति से पहले किसी भी वांछित परिवर्तन कर सकती है। साइट को विभिन्न प्लेटफार्मों के पारिस्थितिकी तंत्र द्वारा एक्सेस किए जाने की उम्मीद है जो वर्तमान मानकों का समर्थन कर सकते हैं या नहीं कर सकते हैं:

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

यदि आपको हमेशा जावास्क्रिप्ट की वर्तमान नस्ल की आवश्यकता होती है, तो आप उन्हें खो देंगे। इस संदर्भ में, टूटी हुई जावास्क्रिप्ट जो सामग्री तक पहुंचने से रोकती है, वह पाप है।

हर कोई कह रहा है कि "जावास्क्रिप्ट का उपयोग कम से कम किया जाना चाहिए" इस शैली की वकालत कर रहा है। कुछ जेएस को शामिल करना आपके लिए ठीक है , आपको बुरा लगता है, लेकिन सर्वर-साइड हासिल की जा सकने वाली सामग्री तक सभी पहुंच बेमानी होनी चाहिए:

  • डेटा प्रविष्टि सत्यापन
  • AJAX के सबसे तेज नेविगेशन के लिए सामग्री का अद्यतन (फिर भी जेएस के बिना काम करता है)

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


3

मैं अपनी राज्य सरकार के लिए काम करता हूं, और परिणामस्वरूप मेरे अधिकांश विकास में डेटा-संचालित इंटरैक्टिव वेबसाइट शामिल हैं। ऐतिहासिक डेटा के खिलाफ प्रश्न, प्रस्तुतियाँ, जैसी चीजें। हम निम्नलिखित कारणों से अपनी जावास्क्रिप्ट को पूर्ण रूप से न्यूनतम रखते हैं:

1) फॉर्म इनपुट की वैधता हमेशा सर्वर साइड पर होनी चाहिए, क्लाइंट साइड पर कभी नहीं। यदि आप क्लाइंट की तरफ से अपने इनपुट्स को मान्य करने का प्रयास करते हैं, तो एक हैकर को आपके वेब पेज की एक स्थानीय कॉपी बनानी होगी और जावास्क्रिप्ट को फिर से लिखना होगा कि वह आपको क्या भेजना चाहता है (एसक्यूएल इंजेक्शन, आदि)। सर्वर पर आपके अनन्य नियंत्रण के तहत आपका सत्यापन होना चाहिए।

2) कई उपयोगकर्ता या तो जावास्क्रिप्ट बंद कर देते हैं या एक ब्राउज़र का उपयोग करते हैं जो इसे ठीक से लागू नहीं कर सकते हैं। सरकार होने के नाते, हमें सभी का समर्थन करना होगा, भले ही वे वास्तव में पुराने उपकरणों का उपयोग कर रहे हों। HTML हर जगह काम करता है; जावास्क्रिप्ट, इतना नहीं। अपने वेब पृष्ठों में जावास्क्रिप्ट का उपयोग न करके, आप उन्हें कुछ संसाधनों का उपयोग करके ग्राहक मशीन पर एक बहुत छोटा पदचिह्न देते हैं। यह उन लोगों की संख्या को अधिकतम करता है जो आपकी सामग्री तक पहुँच सकते हैं। उसी कारण से, आपको अपने सीएसएस के साथ बहुत अधिक पोषण नहीं मिलना चाहिए। इसे सरल रखें, इसे साफ रखें, और छोटी बूढ़ी महिलाओं को आपकी साइट को देखने दें भले ही उनका कंप्यूटर 1999 में खरीदा गया था (संयोग से, हम इस तरह के लोगों से तकनीकी सहायता कॉल प्राप्त करते हैं)।

3) जावास्क्रिप्ट, सर्वर साइड प्रोग्रामर के बजाय "वेब डेवलपर्स" के पक्ष में एक उपकरण होने के नाते, बहुत बदसूरत हो जाता है। और डिजाइनर (जो कि वेब डेवलपर्स आमतौर पर होते हैं, यदि आप इसके बारे में ईमानदार होना चाहते हैं) वेब पर यादृच्छिक स्थानों से "स्क्रिप्ट" डाउनलोड करने के साथ समस्या को नहीं देखते हैं। वे कहते हैं कि "पहिया को क्यों मजबूत करें?" और "यहाँ आविष्कार नहीं किया गया"। इसलिए अपने स्वयं के कोड लिखने के बजाय, वे अक्सर बाहर जाते हैं और किसी अन्य साइट से कुछ लेते हैं, यह सोचकर कि अगर यह इंटरनेट पर है तो यह उचित खेल है। इसके साथ दो समस्याएं हैं: ए) वे अनजाने में कुछ दुर्भावनापूर्ण जावास्क्रिप्ट पोस्ट कर सकते हैं जो आपको पकड़ने में थोड़ी देर लगते हैं, और बी) वे किसी के कॉपीराइट से बच सकते हैं, और आप पर मुकदमा कर सकते हैं। दोनों ही स्थितियों से बचना है।

सामान्य में, जावास्क्रिप्ट एक बुरा विचार है। किसी भी तरह का क्लाइंट साइड कोड एक बुरा विचार है। ग्राहक पक्ष में केवल मार्कअप भाषा और सीएसएस होना चाहिए; सर्वर-साइड को भारी उठाने की अनुमति दें।


2

निर्भर करता है।

हालांकि डेस्कटॉप उपयोगकर्ता एजेंटों से आपकी जावास्क्रिप्ट को सार्थक तरीके से समर्थन और चलाने की उम्मीद की जा सकती है, सभी उपयोगकर्ता एजेंट ग्राफ़िकल डेस्कटॉप ब्राउज़र नहीं हैं, और आपको यह तय करने की आवश्यकता है कि क्या आप उनके लिए पूरा करना चाहते हैं।

उदाहरणों में शामिल:

  • खोज इंजन (Google कुछ जावास्क्रिप्ट चलाता है , लेकिन निश्चित रूप से यह सब नहीं है, और यदि आप नेविगेशन के लिए जावास्क्रिप्ट पर भरोसा करते हैं, तो खोज बॉट आपकी सभी सामग्री नहीं पा सकते हैं)
  • एग्रीगेटर और स्क्रेपर्स
  • पाठ-आधारित ब्राउज़र (हालांकि, बहुत से लोग उन का उपयोग नहीं करते हैं)
  • स्क्रीन रीडर और अन्य रीडिंग एड्स
  • (कुछ) मोबाइल ब्राउज़र

अंगूठे का मेरा नियम है कि अगर यह नियमित उपयोगकर्ताओं (इन-हाउस, समुदाय, उस तरह की) के लिए एक वेब एप्लिकेशन है, तो जावास्क्रिप्ट पर भरोसा करना ठीक है, लेकिन यदि आप सार्वजनिक रूप से सुलभ और खोज योग्य बनना चाहते हैं, तो कम से कम महत्वपूर्ण है कार्यक्षमता को जावास्क्रिप्ट के बिना निर्दोष रूप से काम करना चाहिए, और जब आपको अपरिभाषित व्यवहार को प्रदर्शित करने के बजाय, आपको इसे ज़रूरत पड़ने पर शान से विफल होना चाहिए।


2

पुराने जमाने का दृष्टिकोण पूरी तरह से पुराना है। उदाहरण के लिए, मैंने एक साइट पर मॉडरेटर के लिए एक अजाक्स-विलोपन किया है और स्पष्ट गति में वृद्धि के कारण वह बस खुश है।

बेशक डेवलपर जेएस और गैर-जेएस उपयोगकर्ताओं दोनों के लिए दो संस्करण कर सकता है, लेकिन अधिकांश मामलों में यह अत्यधिक महंगा है और वेबसाइट दर्शकों के 1-2% लायक नहीं है (यदि आप Google नहीं हैं, तो निश्चित रूप से)।

तो मेरा उत्तर होगा NO - जावास्क्रिप्ट कई उपयोगकर्ता-अनुभव के सवालों का जवाब है, मुझे इसका उपयोग क्यों नहीं करना चाहिए?


1

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

ग्राहकों के लिए बिल्डिंग ऐप्स अब केवल गति और सुरक्षा नहीं है। ग्राहक प्रयोज्यता और AJAX प्रौद्योगिकी के उपयोग पर ध्यान केंद्रित करना चाहते हैं। जावास्क्रिप्ट के उपयोग के बिना यह इतना अच्छा काम नहीं करेगा। कुछ बहुत छोटे कार्यों के लिए हर समय पोस्टबॅक्स या गणना जैसे कुछ ऐसा होता है जो ज्यादातर कंपनियों के लिए एक विकल्प नहीं होता है।

जब हम बड़ी कंपनियों की वर्तमान स्थितियों के बारे में सोचते हैं तो एक और संकेतक होता है कि क्यों जावास्क्रिप्ट वर्तमान में होना चाहिए। सीएमएस सिस्टम को देखें जो वर्तमान में व्यवसाय में चल रहे हैं। उनमें से अधिकांश Microsoft SharePoint या Adobe CQ का उपयोग करते हैं, उनमें से कुछ Drupal या किसी अन्य और इसी तरह। यह सब सिस्टम जावास्क्रिप्ट पर निर्भर करता है। जावास्क्रिप्ट के बिना अधिकांश एप्लिकेशन काम नहीं करेंगे, जैसा कि उपयोगकर्ता को उम्मीद है।


0

समय के अनुसार, जावास्क्रिप्ट का उपयोग किया गया था और दुर्व्यवहार किया गया था, और स्क्रिप्ट कमजोरियों से भरे हुए थे (माना जाता था) और मैलवेयर का एक स्रोत था।

जेएस को अक्षम करके कई कॉर्पोरेट नेटवर्क ने जवाब दिया, एक नीति जो (सही या गलत) आज भी कई संगठनों में मौजूद है।

काफी बस, मेरा सुझाव है कि किसी भी साइट को संचालित करने के लिए जेएस पर भरोसा नहीं करना चाहिए


3
मुझे लगता है कि यह विकल्प पूरी तरह से पुराना है। ज्यादातर कंपनियां इंट्रानेट समाधानों के लिए SharePoint या CQ का उपयोग कर रही हैं। दोनों प्रणालियाँ जेएस पर निर्भर करती हैं।
धूमधड़ाके

मैं बिल्कुल "अधिकांश कंपनियों" का उपयोग शेयरपॉइंट का खंडन करता हूं ... और यहां तक ​​कि उन कंपनियों के लिए जो जेएस को आंतरिक रूप से अनुमति देते हैं, इंट्रानेट सेटिंग्स बाहरी से अलग हो सकती हैं।
एंड्रयू

0

जैसा कि यहां अधिकांश उत्तर बताते हैं, का उपयोग javascriptकरना कोई नुकसान नहीं है। यदि आप अपने कोडिंग और गंदे दिखने वाले सोर्स कोड को सहेजना चाहते हैं, तो प्रयास करेंcoffee-script जो बहुत सारे प्रयास टाइपिंग को बचाएगा javascript

http://coffeescript.org/

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.