मैं JQuery में एक नौसिखिया हूँ।
$ के बाद डॉट का उपयोग कब किया जाना चाहिए?
$.trim(str)
और $trim(str)
नहीं?
और कुछ मामलों के बिना: $(document).ready
, लेकिन $.(document).ready
नहीं?
धन्यवाद।
मैं JQuery में एक नौसिखिया हूँ।
$ के बाद डॉट का उपयोग कब किया जाना चाहिए?
$.trim(str)
और $trim(str)
नहीं?
और कुछ मामलों के बिना: $(document).ready
, लेकिन $.(document).ready
नहीं?
धन्यवाद।
मुझे विश्वास नहीं है कि आपके पास कोई विकल्प है, केवल एक वाक्यविन्यास सही है और वास्तव में काम करेगा। $
प्रतीक jQuery
समारोह के लिए एक आशुलिपि संकेतन से ज्यादा कुछ नहीं है, इसलिए जब आप लिखते हैं:
$('some selector')
आप एक समारोह बुला रहे हैं, jQuery
कहा जाता है, और एक स्ट्रिंग में गुजर, या अपने मामले में, आप कर रहे हैं document
ऑब्जेक्ट में गुजर रहा है।
जब एक विधि का आह्वान करने की बात आती है, जैसे ट्रिम जैसी सहायक विधि, आपको निम्न वाक्यविन्यास, या तो jQuery.trim()
या $.trim()
का उपयोग करने की आवश्यकता होगी। यह अपने आप को जांच करने के लिए आसान है, बस इस आजमा कर देखें:
typeof($.trim) //returns "function"
typeof($trim) //returns "undefined"
... और ['typeof'] (https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/ऑपरेटर/Special_Operators/typeof_Operator) ऑपरेटर को कोष्ठक की आवश्यकता नहीं है, न ही एक बिंदु। ;-) –
आप jQuery के स्थिर विधि है कि कहते हैं की, एक डोम तत्व प्रोटोटाइप में उपलब्ध नहीं है पर पहुंचते हैं। trim
एपीआई द्वारा खुलासा एक स्थिर विधि है।
कोई $.fn.trim
नहीं है और हम विश्वसनीय रूप से String.prototype.trim
पर भरोसा नहीं कर सकते क्योंकि विधियां भिन्न हो सकती हैं।
$trim
के बारे में परिभाषित नहीं किया गया है। trim
$
का एक तरीका है जो jQuery है। आप या तो $['trim']
या $.trim
कर सकते हैं, और यह इसे एक्सेस करने का एकमात्र तरीका होना चाहिए।
jQuery में, $
एक चर नाम है, जैसे foo
या bar
, जो वैश्विक jQuery ऑब्जेक्ट का संदर्भ देता है। यदि आप jQuery ऑब्जेक्ट पर किसी प्रॉपर्टी तक पहुंचना चाहते हैं, तो आप डॉट का उपयोग करें। ये मूलतः एक ही हैं:
$.property
jQuery.property
(के बाद से $
किसी अन्य की तरह एक चर रहा है, यह आप अपनी पसंद के कुछ भी करने के लिए सेट के लिए संभव है अगर आप को जोड़ने के बाद Prototype पुस्तकालय शामिल करने के लिए थे हो सकता है। jQuery लाइब्रेरी, जो आपको $
document.getElementById
फ़ंक्शन के उपनाम पर इंगित करती है।)
jQuery वस्तु भी एक समारोह होने वाला है, तो आपको लगता है कि समारोह में एक ही कॉल कर सकते हैं के रूप में आप किसी भी अन्य समारोह कहेंगे:
$(arguments)
alert("arguments!")
दूसरी ओर, $trim
सिर्फ एक और वैश्विक चर रहा है, $
या location
है, जो हो सकता है की तरह एक समारोह आप अपने आप को परिभाषित:
var $trim = function(arguments) {
return "foo";
};
$trim(str)
सबसे अच्छा जवाब +1 – CodyBugstein
$.foo
वाक्य रचना का मतलब है कि $
एक के साथ एक वस्तु के रूप में इलाज किया जा रहा है फ़ील्ड foo
कहा जाता है, जो आमतौर पर एक फ़ंक्शन है जिसे आप कॉल कर रहे हैं। तो यह foo
नामक एक स्टैंडअलोन फ़ंक्शन के लिए वास्तव में कुछ भी अलग नहीं है - यह किसी भी अन्य फ़ंक्शन से अलग करने और इसे jQuery लाइब्रेरी से संबद्ध करने के लिए $.
के साथ बस प्रीफ़िक्स किया गया है।
जब आप $(something).foo
का उपयोग करते हैं तो आप jQuery फ़ंक्शन पर something
पास कर रहे हैं, और परिणाम आप जो गुजर रहे हैं उस पर निर्भर करता है (मौजूदा ऑब्जेक्ट को ढूंढने के लिए चयनकर्ता हो सकता है, या यह HTML बनाने के लिए स्क्रैप हो सकता है एक नई वस्तु, या यह पेज लोड पर चलाने के लिए पंजीकृत होने वाला एक फ़ंक्शन हो सकता है)। किसी भी मामले में, आप परिणामी लौटे ऑब्जेक्ट पर foo
पर कॉल कर रहे हैं, जिसे कई डीओएम ऑब्जेक्ट्स पर लागू किया जा सकता है यदि आपके द्वारा पारित चयनकर्ता वर्ग को पहचानता है, उदाहरण के लिए।
पहला वाक्यविन्यास तब उपयोग किया जाता है जब jQuery फ़ंक्शन DOM ऑब्जेक्ट्स (HTML पृष्ठ के कुछ हिस्सों) के अलावा किसी अन्य चीज़ पर चल रहा है। उदाहरण के लिए, एक स्ट्रिंग ($.trim
), या एक सरणी ($.each
)। वे पृष्ठ के तत्व नहीं हैं, वे जावास्क्रिप्ट में केवल शुद्ध डेटा हैं।
दूसरा वाक्यविन्यास डीओएम तत्वों पर काम करते समय उपयोग किया जाता है - आप एक jQuery ऑब्जेक्ट बनाने के लिए $(something)
का उपयोग करते हैं, जो शून्य या अधिक DOM तत्वों के चारों ओर एक रैपर है। फिर आप लौटे हुए रैपर पर फ़ंक्शंस को आसानी से ऑब्जेक्ट करने के लिए कॉल करते हैं।
संक्षिप्त उत्तर: डॉलर का संकेत आम तौर पर या तो ब्रांड्स, या एक बिंदु और विधि नाम द्वारा पीछा किया जाएगा। बेशक, आपको निश्चित रूप से जावास्क्रिप्ट भाषा सीखने की कोशिश करनी चाहिए ताकि आप समझ सकें कि सभी बिंदुओं और कोष्ठक वास्तव में क्या मतलब है :) – Martin