`
mineral
  • 浏览: 287783 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

[10minutes]javascript封装名字空间的写法

阅读更多

 

 

var az = function() {
    var variable1 = "test";
    var variable2 = "test2";

    function testFunc() {
        alert(variable1);
    }

    return {
        init : function() {
            testFunc();
            this.testFunc2();
        },

        testFunc2 : function() {
            alert(variable2);
        }
    };
}();

az.init();

 

 

 

变量 variable1 和 variable2. 这两个变量可以看成是 private 的变量。 

testFunc 可以看成是 private 函数.

 

init,testFunc2是public 公共函数.

 

使用this引用内部的函数.

 

在类里调用函数有两种方法,一种是写全类名   az.testFunc2() ,第二种是使用this引用,this.testFunc2()

 

 

下面再深入一点,如何实现类似java的多级包结构:

 

 

 

var az.util = function() {
    return {
        gebi : function(obj) {
            return document.getElementById(obj);
        }
    };
}();

 

 

 

 这样就可以用az.uti.getbi()来调用,使用这种封装,代码可以多级地扩展下去.

 

注意事项:

 

return 和 {之间不能有回车,否则代码会出错.

 

 

 

 

 

 

 

1
2
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics