zoukankan      html  css  js  c++  java
  • 《javascript设计模式与开放实践》学习(四)私有变量

    为了避免全局变量被污染,可采用加命名空间和闭包封装方式进行私有化。

    一、使用命名空间

    将某个变量变成某个命名空间下私有变量

    var MyApp={};
        MyApp.namespace=function (name) {
            var parts=name.split('.');
            var current=MyApp;
            for(var i in parts){
                if(!current[parts[i]]){
                    current[parts[i]]={};
                }
                current=current[parts[i]];
            }
        };
        MyApp.namespace('event');
        MyApp.namespace('dom.style');
    
        console.dir(MyApp);

    上述等价于

    var Myapp={
            event:{},
            dom:{
                style:{}
            }
    };

    这样就定义了MyApp命名空间下的两个属性event和dom.

    二、使用闭包

     var user=(function () {
            var _name='ls',
            _age=27;
            return{
                getUserInfo:function () {
                    return _name+'_'+_age;
                }
            }
        })();
        console.log(user.getUserInfo()) ;

    将name和age属性封装起来,外部无法访问。

  • 相关阅读:
    jq 的简单循环
    简单的下拉菜单
    jQ事件
    图片移动
    选中效果
    js 时间
    简单的密码验证
    DOM 的简介 和一些方法
    Java编程思想笔记
    Java并发笔记(二)
  • 原文地址:https://www.cnblogs.com/GallopingSnail/p/5918266.html
Copyright © 2011-2022 走看看