js单例模式终极版

2018-10-28  本文已影响0人  louhangfei

把创建实例对象的职责和管理单例的职责分别放置在两个方法里

// 创建一个按钮
var createBtn = function(){
    let com = '<Button>按钮</Button>'
    document.querySelector("body").append(com)
}

// 创建一条线
var createLine = function(){
    let com = '<hr></hr>'
    document.querySelector("body").append(com)
}

// 单例
var createSingle=function(fn){
    var init = false;
    return function(){
        if(!init){
            init = true;
            fn.apply(this,arguments);  
        } 
    }
}


btnFn = createSingle(createBtn);
lineFn = createSingle(createLine);
document.getElementById("footer").onclick=function(){
     btnFn();
     lineFn()
}
上一篇 下一篇

猜你喜欢

热点阅读