JavaScript 命名空间

当一个web项目够大的时候,就会产生大家写js的时候变量名重复的问题,

早先我们通过对象来解决命名空间的问题

var org={
        department1:{
            zhangsan:{
                name:"san",
                age:14
            },
            lisi:{
                name="si",
                age:15
            }
        },
        department2:{
            wangmazi:{
                name="ma",
                age=15
            }
        }
    }
    var zhangsan = org.department1.zhangsan
    console.log(zhangsan.name);

现在更多的用的是类似webpack来实现

下面我们通过闭包来解决命名空间的问题

 

//现在我们的解决方式  属性私有化 不污染全局变量
    var name=123;
    var init= (function(){
        var name='abc';
        console.log("立即执行完毕")
        function callName(){
            console.log(name);
        }
        return  function(){
            callName();
        }
    }());

 

posted @ 2019-03-26 19:44  110来了  阅读(166)  评论(0编辑  收藏  举报