js的一个语法问题(function($){...})(jQuery)
js的一个语法问题(function($){...})(jQuery)
(function($){...})(jQuery)实际上是匿名函数,不懂得朋友可以继续往下看。
function(arg){...}
这就定义了一个匿名函数,参数为arg
而调用函数时,是在函数后面写上括号和实参的,由于操作符的优先级,函数本身也需要用括号,即:
(function(arg){...})(param)
这就相当于定义了一个参数为arg的匿名函数,并且将param作为参数来调用这个匿名函数
而(function($){...})(jQuery)则是一样的,之所以只在形参使用$,是为了不与其他库冲突,所以实参用jQuery
var fn = function($){....};
fn(jQuery);
还有:(function (window, document) {})(window, document);
转自:http://www.iteye.com/topic/1119455