// 命名空间
var Zxf = {
g : function ( id ) {
return document.getElementById( id );
},
css : function ( id , key , value ) {
var dom = typeof id ==='string' ? this.g( id ) : id
dom.style[key] = value;
}
};
Zxf.css( 'hh' , 'color' , 'red' );
// 引申拓展一下的话,如此就可以建一个自己写的 平常用的代码库
var Zxf = {
Util: {
method1: function(){
console.log( "util mothod1")
},
method2: function () {
}
},
Tools: {
method1: function(){
console.log( "tool mothod1")
},
method2: function () {
}
},
Ajax: {
method1: function(){
console.log( "Ajax mothod1")
},
method2: function () {
}
}
};
Zxf.Util.method1();
Zxf.Ajax.method1();
// 无法修改的static 静态变量
var Conf = (function () {
// 私有变量
var conf = {
MAX_NUM : 100,
MIN_NUM : 1,
COUNT : 1000
};
// 返回取值对象
return{
// 取值器方法
get : function ( name ) {
return conf[name] ? conf[name] : null;
}
}
})();
var count = Conf.get('COUNT');
console.log( count );
// 惰性单例, 也就是 用的时候才创建
var LazySingle = ( function () {
// 单例实例引用
var _instance = null;
// 单例
function Single(){
// 定义私有属性和方法
return {
publicMethod: function () {
},
publicProperty: '1.1.1'
}
}
// 获取单例对象接口
return function () {
// 如果为创建单例 将创建单例
if( !_instance ){
_instance = Single();
}
// 返回单力
return _instance;
}
})();
console.log( LazySingle().publicProperty );