首页 > 技术文章 > 07.30《JavaScript》——闭包和简单模块

justlive-tears 2018-07-31 00:03 原文

 

闭包是指在JavaScript中,内部函数总是可以访问其所在的外部函数中声明的参数和变量,即使在其外部函数被返回(寿命终结)了之后。

同时了以减少全局变量的污染

       // 减少全局变量的污染
           function outer() {
                 var a = 10;

               function inner() {

                      alert(a++);
                  }

                 return inner;
            }

            //alert(a);//a是局部变量 在这不能访问

            var test = outer();

            test(); //使用闭包访问 a 扩大了a的作用域

 

简单模块

       var User = (function(winObj){
                var i = 111;
                var jsonObj = winObj.$ = {
                    "add" : function(){
                        alert('添加用户' + i);
                    },
                    "delect" : function(){
                        alert('删除用户');
                    },
                    "update" : function(){
                        alert('修改用户');
                    }
                }
                return jsonObj;
            })(window);
            
            User.add();
            
            
            
            
            var Category  = (function(){
                var i = 222;
                return{
                    "add" : function(){
                        alert('添加商品种类' + i);
                    },
                    "delect" : function(){
                        alert('删除商品种类');
                    },
                    "update" : function(){
                        alert('修改商品种类');
                    }
                }
            })();
            
            Category .add()

第一个模块是添加、删除用户等操作

第二个是在第一个的基础上做简单的删改,做出来的商品种类的模块

推荐阅读