zoukankan      html  css  js  c++  java
  • 学习javascript设计模式之单例模式

    1、单例模式的核心是确保只有一个实例,并提供全局访问。

    2、惰性单例 指的是在需要的时候才创建对象实例。

    如在页面中创建唯一div 普通做法

    var createDiv = (function(){
        var div;
        return function(){
            if(!div){
                div = document.createElement("div");
                div.style.width="100px";
                div.innerHTML = "fdsafdsafdsafdsa";
                div.style.display = 'none';
                document.body.appendChild(div);
                return div;
            }
            return div;
        }
    })();

    document.getElementById("btn").onclick = function(){
        var loginlayer = createDiv();
        loginlayer.style.display = 'block';
    }

    应用通用惰性单例

    var getSingle = function(fn){
        var result;
        return function(){
            return result || (result = fn.apply(this,arguments));
        }
    }

    var createDiv = function(){
        var div = document.createElement("div");
        div.style.width="100px";
        div.innerHTML = "fdsafdsafdsafdsa";
        document.body.appendChild(div);
        return div;
    }

    var createSingleDiv = getSingle(createDiv);
    document.getElementById("btn").onclick = function(){
        var loginlayer = createSingleDiv();
        loginlayer.style.display = 'block';
    }

  • 相关阅读:
    LeetCode 79
    LeetCode 437
    LeetCode 783
    LeetCode 59
    LeetCode 每日一题 04/24
    LeetCode 5
    LeetCode 43
    简易多线程任务 往数据库插数据
    定时任务--查数据库--注解实现
    redis 简易 实现
  • 原文地址:https://www.cnblogs.com/junwu/p/4744393.html
Copyright © 2011-2022 走看看