應屆生都會的設計模式之單例模式

定義:

  • 保證一個類僅有一個實例,並提供一個訪問它的全局訪問點。
  • 數學與邏輯學中 single定義爲「有且僅有一個元素的集合」。在它的核心結構中只包含一個被稱爲單例的特殊類。
  • 經過單例模式能夠保證系統中應用該模式的類一個類只有一個實例。即一個類只有一個對象實例。

特色

  • 它主要研究如何建立一個對象,來節約一些資源,節約一些開銷,瀏覽器資源是有限的。

使用場景

  • 一個單一對象。好比:彈窗,不管點擊多少次,彈窗只應該被建立一次。

源碼實現

var jsUtil = {
    getSingle: function() {
        var result;
        return function() {
            if(!result) {
                result = func.apply(this, arguments);
            }
            return result;
        }
    }
}
// 建立彈窗
var CreateAlert = function(text) {
    var oDiv = document.createElement('div');
    oDiv.style.display = 'none';
    oDiv.innerText = text;
    document.body.appendChild(oDiv);
    return oDiv;
}
jsUtil.getSingle(CreateAlert);
oBtn.onclick = function() {
    var oDiv = singleAlert('hello');
    oDiv.style.display = 'block';
}
複製代碼

你的點贊是我持續輸出的動力 但願能幫助到你們 互相學習 有任何問題下面留言 必定回覆

相關文章
相關標籤/搜索