JS设计模式——单例模式
单例模式:保证一个类仅有一个实例,并提供一个访问它的全局访问点
主要结构:初始化和判断是否唯一
比如在页面中创建唯一个登录浮窗
var createLoginLayer = function(){
var div = document.createElement('div');
div.innerHTML = '我是登录浮窗';
div.style.display = 'block';
document.body.appendChild(div);
return div;
}
var getSingle = function(fn){
var result;
return function(){
return result || (result = fn.apply(this,arguments))
}
}
var createSingleLoginLayer = getSingle(createLoginLayer)
document.getElementById('loginBBtn').onclick = function(){
var loginLayer = createSingleLoginLayer();
loginLayer.style.display = 'block';
}
将创建dom和管理是否唯一的逻辑在拆分成各自独立的函数处理

浙公网安备 33010602011771号