函数声明方法: function fun(){}
匿名函数(即去掉函数名): function(){}
此类用法一般用于事件,比如 window.οnlοad=function(){ .... } 或者 .onclick之类的事件也可以这样用
函数的调用,呵呵,当然就是函数名加括号 fun(); 了,那匿名函数的调用就是:
声明一个匿名函数 function(){} 同时调用它,这样就成了这 function(){}(); 当然,在声明的同时,加个括号,只是优先级的调整而已,所以就成了 (function(){ 代码。。。; })();
jquery 使用这种写法的优点:
这种写法最有价值之处是不会污染外部命名空间,jQuery库只向全局命名空间引入了jQuery这个变量和可选的$变量(当不设定noConflict时),使得它与其它js并存没有任何代码级的问题.
闭包的基本写法:
(function(){do someting})();
//这个你就理解为定义一个匿名函数并立即执行
带参数的话就这样:
(function(形参){do someting})(实参);
另外
(function(){var upc="i am upc"})();
alert(upc);
会提示undefined。
因为闭包后,里面的变量就相当于局部了。
闭包的好处:
不增加额外的全局变量,
执行过程中所有变量都是在匿名函数内部。
匿名函数(即去掉函数名): function(){}
此类用法一般用于事件,比如 window.οnlοad=function(){ .... } 或者 .onclick之类的事件也可以这样用
函数的调用,呵呵,当然就是函数名加括号 fun(); 了,那匿名函数的调用就是:
声明一个匿名函数 function(){} 同时调用它,这样就成了这 function(){}(); 当然,在声明的同时,加个括号,只是优先级的调整而已,所以就成了 (function(){ 代码。。。; })();
jquery 使用这种写法的优点:
这种写法最有价值之处是不会污染外部命名空间,jQuery库只向全局命名空间引入了jQuery这个变量和可选的$变量(当不设定noConflict时),使得它与其它js并存没有任何代码级的问题.
闭包的基本写法:
(function(){do someting})();
//这个你就理解为定义一个匿名函数并立即执行
带参数的话就这样:
(function(形参){do someting})(实参);
另外
(function(){var upc="i am upc"})();
alert(upc);
会提示undefined。
因为闭包后,里面的变量就相当于局部了。
闭包的好处:
不增加额外的全局变量,
执行过程中所有变量都是在匿名函数内部。