2010-04-27 8 views
13

उदाहरण के लिए, जब आप jQuery('someDiv'); का उपयोग करते हैं, तो यह एक फ़ंक्शन है, लेकिन आप jQuery.ajax(...); का भी उपयोग कर सकते हैं।"jQuery" var एक फ़ंक्शन और ऑब्जेक्ट कैसे है?

यह कैसे संभव है?

+1

भी देखें इस सवाल http: // stackoverflow .com/प्रश्न/1302428/क्या-करता-jquery-वास्तव में वापसी – harpo

उत्तर

33

जावास्क्रिप्ट में, कार्य स्वयं वस्तुएं हैं।

var x = function() {}; 
x.foo = "bar"; 

console.log(x.foo); // bar 

संपादित करें:

इस पर जोड़ने के लिए:

var x = function() { 
    return 'foo'; 
}; 
x.bar = function() { 
    return 'baz'; 
}; 

तो अब:

console.log(x()); // foo 
console.log(x.bar()); // baz 
+8

भगवान की मां, मुझे नहीं पता था कि o_O –

+2

कार्य जावास्क्रिप्ट में प्रथम श्रेणी के नागरिक हैं। –

+2

सब कुछ सब कुछ आदमी है। जावास्क्रिप्ट नियम। :) – ahsteele

0

मेरा मानना ​​है कि .ajax उदाहरण jQuery प्लग में उपयोग कर रहा है आर्किटेक्चर। मुझे लगता है कि jQuery की AJAX क्षमताओं का उपयोग आप कर सकते हैं कई प्लग-इन में से एक है।

'$' जो देखने का उपयोग करता है वह भी jQuery को कॉल करने के लिए एक उपनाम है।

एक आखिरी अवलोकन jQuery (jQuery-1.4.2.js से) के रूप में परिभाषित किया गया है:

var jQuery = function(selector, context) { 
     // The jQuery object is actually just the init constructor 'enhanced' 
     return new jQuery.fn.init(selector, context); 
    }, 

और अजाक्स की तरह दिखता है:

jQuery.extend({ 
...some other goodness... 
ajax: function(origSettings) 
...more goodness... 
}); 
संबंधित मुद्दे