首页 > 代码库 > jquery

jquery

(function( $){
...

})(jQuery);

JQUERY为何如此开头:

1.用匿名函数包裹,利用闭包产生“私有”变量,防止全局变量污染(全局变量太多);

2.传递jQuery对象,加速性能,因为jQuery对象是window对象的属性,而window对象的属性方法太多,所以当参数传递时,不用每次都便利window对象的属性和方法。

3.自己实现一个功能时,也应如此- -!


function(arg){...} 
这就定义了一个匿名函数,参数为arg 

而调用函数时,是在函数后面写上括号和实参的,由于操作符的优先级,函数本身也需要用括号,即: 
(function(arg){...})(param) 
这就相当于定义了一个参数为arg的匿名函数,并且将param作为参数来调用这个匿名函数 

而(function($){...})(jQuery)则是一样的,之所以只在形参使用$,是为了不与其他库冲突,所以实参用jQuery
var fn = function($){....}; 
fn(jQuery); 



总体来说,顺序是这样的:先计算第一个小括号,发现里面的表达式是一个函数,返会该匿名函数的引用(指针),最后一个括号则是建立匿名函数的实参和并执行。 
示例: 
计算两个数之和。 
JavaScript: 

复制代码代码如下:


(function (a,b){ 
alert(a+b); 
})(7,8); 


C: 

复制代码代码如下:


int sum(int a,int b){return a+b;} 
void main(){ 
int (*pt)(int,int); //此处定义函数指针 
pt = sum; 
printf("%d",pt(7+8)); 







jquery