单例模式:
什么是单例模式:返回一个对象并且只有一个对象,并且获得该对象的方法。调用这个方法时如果该类引用存在则返回该引用,否则创建这类的实例,并赋值给该类引用
什么情况下用?
假如一个业务中需要一个遮罩层,和里面的一些交互效果,但是遮罩层不一定需要存在
利用闭包把这个遮罩层变量包含在内,第一次时创建这个遮罩层,之后则直接返回这个遮罩层
另一个demo
var single = function(){
var unique;
function getInstance(){
if(unique === undefined){
unique = new Construct()
}
return unique;
}
function Constuct(arg){
//生成单例构造函数的代码
}
return {
getInstance : getInstance
}
}