1、理解IIFE:
***全称Immediately-Invoked Function Expression
*立即调用函数表达式
【别名:匿名函数自调用】
2、作用:
隐藏内部实现
不会污染全局命名空间
用来编写js模块
$().test();
//
是
一
个
函
数
,
是一个函数,
是一个函数,执行后返回的是一个对象
(function(){
// 局部空间
console.log('匿名函数自调用了')
})();
(function(){
var a = 1;
function test(){
console.log(a++);//1
console.log(++a);//3
}
window.$=function(){//向外暴露一个全局函数
return {
test:test
}
}
})();
//test()不可以这样用
$().test();//$是一个函数,$执行后返回的是一个对象