2012-07-25 11 views
5

मैं कुछ समय के लिए जावास्क्रिप्ट का उपयोग कर रहा हूं और हाल ही में jquery का उपयोग करना शुरू कर दिया है जिसे मैं स्वीकार करूंगा कि मैं प्रशंसक हूं। <script type='text/javascript' src='../locationOfJquery/jquery.js'></script> उस पृष्ठ पर स्क्रिप्ट टैग में लाइब्रेरी का उपयोग करने की अनुमति देता है। क्या मैं जानना चाहता हूँ अगर सिर्फ स्क्रिप्ट टैग सहित पृष्ठ लोड समय किसी भी धीमा कर देती है, भले ही पृष्ठ पर कोई jQuery कोड है, और यह भी अगर वहाँ jQueryक्या मेरे पृष्ठ पर jquery लाइब्रेरी को शामिल करने के लिए कोई डाउनसाइड्स हैं?

उपयोग करने के लिए किसी भी अन्य प्रमुख कमियां हैं
+0

छोटा jQuery स्रोत 32kb है।मैं तब तक शामिल नहीं होगा जब तक आप वास्तव में इसका उपयोग नहीं कर रहे हों। jQuery भयानक है, कोई डाउनसाइड्स नहीं हैं! –

+1

यदि यह 1 999 था, तो मैं हाँ कहूंगा। लेकिन इस दिन और उम्र में, जहां अधिकांश लोगों को डायल-अप से बेहतर होता है, नहीं ... यदि आप बस अन्य जेएस फाइलों को शामिल करते हैं तो यह प्रदर्शन को प्रभावित नहीं करेगा। – kevin628

+1

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

उत्तर

5
  • रखो है पृष्ठ के निचले हिस्से में स्क्रिप्ट टैग। यह ऑनलोड घटनाओं की आग से पहले डीओएम की प्रसंस्करण को धीमा नहीं करेगा।
  • jQuery के minified संस्करण का उपयोग करें, जो एक छोटी छवि/आइकन के रूप में छोटा है।
  • यदि आगंतुक आपकी साइट पर एक से अधिक पृष्ठों पर जाते हैं, तो आमतौर पर उनकी पहली यात्रा के बाद भी उन्हें कैश किया जाएगा। यदि आप सामग्री वितरण नेटवर्क (जैसे Google के) का उपयोग करते हैं तो यह पहले से ही पूर्व-कैश किया जा सकता है (या अधिक-स्थानीय सर्वर से परोसा जाता है)। अच्छा पहला इंप्रेशन महत्वपूर्ण है।

आगे छोटे प्रश्न का उत्तर देने के लिए किया था:

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

नंबर:

क्रोम पर उदाहरण के लिए जब Stackoverflow वेबसाइट लोड हो रहा है, गूगल CDN से jQuery पुस्तकालय का अनुरोध, परिणाम थे:

  • 0.027ms कुल समय डाउनलोड किया गया jQuery (शायद कैश किया गया)
  • 35.992 मिमी jQuery का मूल्यांकन करने में कुल समय बिताया और किसी भी डिफ़ॉल्ट डीओएम/सीएसएस ऑपरेशंस

यह सब निश्चित रूप से सापेक्ष है। जब आप इस पृष्ठ को लोड करते हैं तो मुझे शर्त है कि आपने कोई अंतराल नहीं देखा क्योंकि पूरे पृष्ठ को लोड करने के लिए लगभग 630ms लगे।

+0

ठीक है, फिर भी इसे लागू करने में कोई चिंता नहीं होनी चाहिए – John

0

यदि आप इसका उपयोग नहीं कर रहे हैं तो आपको इसे शामिल नहीं करना चाहिए।

32k भुगतान करने के लिए एक छोटी सी कीमत है, लेकिन डाउनलोड करने के लिए कोई अनुरोध नहीं है और 0k अतिरिक्त है।

इसके अलावा, और अधिक महत्वपूर्ण बात यह है कि यदि आप किसी का उपयोग कर रहे हैं तो आप अन्य ढांचे के साथ संघर्ष में भाग सकते हैं।

+0

Im वर्तमान में नहीं, इस बिंदु पर मुख्य रूप से मेरे बड़े वेबपृष्ठों में से एक लोड लोड को अनुकूलित करने के बारे में चिंतित है, लेकिन jQuery की कार्यक्षमता निश्चित रूप से एक दृढ़ता है। – John

+0

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

+1

यदि आप jQuery का उपयोग करने पर विचार कर रहे हैं, तो मैं अब इसे शामिल करने की चिंता नहीं करता। इसे छोड़कर आप जो अनुकूलन करते हैं वह छोटा है। – Andrew

2

क्लाइंट को jQuery स्क्रिप्ट (जो काफी छोटा है) डाउनलोड करना होगा। अधिक अनुकूलित करने के लिए आप Google या Microsoft से होस्ट किए गए "Content Delivery Network" संस्करणों का उपयोग कर सकते हैं। यह भी याद रखें कि संशोधित संस्करण का उपयोग करना जो तेजी से डाउनलोड करता है।

This article कारण बताते हैं।

+2

सीडीएन का उपयोग करना चीजों को ज्यादा बदलने वाला नहीं है। यह दुनिया के लिए अधिकतर बेहतर है और आपका सर्वर किसी व्यक्तिगत उपयोगकर्ता के लिए है। यह उन्हें एक डाउनलोड से बचा सकता है, लेकिन पहली बार जब कोई आपके पृष्ठ को हिट करता है, तो उन्हें jQuery को फिर से डाउनलोड नहीं करना होगा चाहे वह एक सीडीएन या आपके सर्वर से जुड़ा हुआ हो। मैं यह नहीं कह रहा कि यह एक अच्छी बात नहीं है, लेकिन यह jQuery का उपयोग कर साइट की समग्र प्रोफ़ाइल को नहीं बदलेगी। –

+0

हाँ, मैं मानता हूं कि यह एक नगण्य अनुकूलन है, लेकिन फिर भी, यह अधिकांश उपयोगकर्ताओं के लिए एक ही डाउनलोड को सहेज सकता है (यदि आपके पास लाखों नए उपयोगकर्ता हैं जिसका अर्थ है 30KB बनाम उपयोगकर्ताओं की बैंडविड्थ उपभोग), साथ ही कुछ अन्य के लिए विलंबता उपयोगकर्ता जिन्हें इसे डाउनलोड करने की आवश्यकता है। सब कुछ एक जीत जीत स्थिति है। मुझे लगता है कि बैंडविगॉन पर कूदना उचित है। –

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

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