单例模式就是通过一个变量标识是否已经创建过对象,不在重复创建
通过代理类处理单例模式
eton = (function(){//管理单利模式的逻辑
var instance;
return function(html){
if(!instance){
instance = new CreateDiv(html)
}
return instance;
}
})()
var a = new ProxySingleton("seven1");
var b = new ProxySingleton("seven2");
alert(a===b)//true
存储为全局变量
命名空间污染
利用闭包封闭为私有变量(_)
惰性单例模式
display = "none";
document.body.appendChild(div);
return div;
}
var getGingleElement = getGingle(func);//返回一个函数
document.getElementById("clickme").onclick = function(){
var adiv = getGingleElement("hello world");//真正调用时
adiv.style.display = "block";
}
document.getElementById("again").onclick = function(){
var adiv = getGingleElement("goodbye world");
adiv.style.display = "block";
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。