自运行函数
我们知道函数必须调用才能执行,还有一种函数是不调用,会自己执行,即自运行函数
如下展示演变过程:
function fn(){
//这里是代码
};
fn(); //运行fn函数
//与上面等价
var fn = function(){
//这里是代码
}
fn(); //运行
//对fn()进行替换一下
//(fn)()等价与fn()
(function(){
//这里是代码
})()
由此可以看出自运行函数实质是闭包
写自执行函数的好处:独立的作用域,不会污染全局环境
(function(window,document) { var div=document.getElementById('div'); })(window,document);
闭包的特点
- 改变变量的作用域
- 消除全局变量的污染