学习一个东西,一定要明白这个东西的概念是什么,这个东西被提出来的目的是什么
单例模式又称为单体模式,其实就是只允许实例化一个对象,有时我们也可以用一个对象类规划命名空间,仅仅有条的管理对象的属性和方法.
单例模式比较常规常见,比较简单,直接看代码
//命名空间管理
var Neal = {
g:function(id) {
return document.getElementById(id)
},
css:function(id,key,value) {
this.g(id).style[key] = value;
},
//...
}
//模块分明
var A = {
Util:{
util_method1:function() {
},
util_method2:function() {
}
},
Tool:{
tool_method1:function(){},
tool_method2:function(){},
}
//...
}
//惰性单例
var LazySingle = (function() {
//单例实例引用
var _instance = null;
//单例
function Single() {
return{
publicMethod:function() {
},
publicProperty:'1.0'
}
}
//获取单例接口
return function() {
if(!_instance){
_instance = Single();
}
//返回单例
return _instance;
}
})()