I was going through the source code of jQuery. I’m having trouble understanding the wrapping strategy for the jQuery object.
(function( window, undefined ) {
// Define a local copy of jQuery
var jQuery = function( selector, context ) {
// The jQuery object is actually just the init constructor 'enhanced'
return new jQuery.fn.init( selector, context );
},
....
....
....
// Expose jQuery to the global object
window.jQuery = window.$ = jQuery;
})(window);
Specifically, what I’m not able to understand stems from the first line.
-
What is the outermost unnamed container function? Why is it required?
-
Why is the container function anonymous?
-
What is the need for the outermost ‘(‘ parantheses ?
The function is anonymous because it is called immediately: