1 立即执行函数(IIFE)
Immediately-Invoked Function Expression
- 匿名函数语法:
<script>
(function (a){
console.log("匿名函数:", a)
})
</script>
- 如何调用:
<script>
(function (a){
console.log("匿名函数:", a)
})(1)
</script>
- 作用
- 隐藏实现
- 不会污染外部(全局)命名空间
<script> (function (a){ var b = 3; // 这样里面声明的变量b,只能在函数内部才有效,不会污染外部命名空间 console.log("匿名函数:", a) })(1) </script>
- 用它来编码js模块
<script>
(function () {
var a = 11;
function test() {
return a;
};
window.$ = function () {
// $函数就是返回上面定义的test
return test;
}
})()
// 就可以通过这个方式,返回拿到匿名函数中的a
console.log(window.$()())
</script>