Javascript匿名函数
// 匿名函数——最基本方式(立即执行)
(function(){
alert("匿名函数");
})();
// 等价于
var test = function(){
alert("匿名函数");
}
test();
// 匿名函数——带参数
(function(param){
alert(param);
})("xy");
// 匿名函数——链式调用
(function(param) {
alert(param);
return arguments.callee;
})("xy")("xy")("xy");
// 匿名函数——jQuery
(function($){
...................................
})(jQuery);
// 等价于
var test = function(){
var $ = jQuery;
.......................................
}
test();
那么js匿名函数有什么好处呢?
(function(){
var a = "xy";
})();
这样写的好处是里边的变量,比如a,都是封闭的,不对外开放,减少了全局变量带来的混乱。
还有其他的一些写法
!!!(function(){
alert("run!")
})();
(function(){
alert("run!")
}).call();
(function(){
alert("run!")
}).apply();
(function(){
alert("run!")
}());
void (function(){
alert("run!")
})();
~(function(){
alert("run!")
})();
~!(function(){
alert("run!")
})();
delete (function(){
alert("run!")
})();
+(function(){
alert("run!")
})();
-(function(){
alert("run!")
})();
setTimeout(function(){
alert("run");
},0);
~+-!(function(){
alert("run!")
})();
参考博客: https://blog.163.com/yyl_love_you@126/blog/static/7261237120101011101320878/
最后更新:2017-04-02 22:16:20