JS常見的設計模式及實現(JS2)

2021-10-01 10:26:41 字數 577 閱讀 2333

常見的設計模式及實現

js設計模式一:工廠模式

js設計模式二:單例模式

js設計模式三:模組模式

js設計模式四:**模式

js設計模式五:職責鏈模式

js設計模式六:策略模式

js設計模式七:發布-訂閱模式

我們已經知道實現資料的雙向繫結,首先要對資料進行劫持監聽,需要設定乙個***observer,用來監聽所有屬性。如果屬性發上變化了,就需要告訴訂閱者watcher看是否需要更新。因為訂閱者是有很多個,所以我們需要有乙個訊息訂閱器dep來專門收集這些訂閱者,然後在***(發布者)observer和訂閱者watcher之間進行統一管理的。接著,我們還需要有乙個指令解析器compile,對每個節點元素進行掃瞄和解析,view初始化,為watcher繫結相應的更新函式,此時當訂閱者watcher接收到相應屬性的變化,就會執行對應的更新函式,從而更新檢視。因此接下去我們執行以下3個步驟,實現資料的雙向繫結:

1.實現乙個***observer,用來劫持並監聽所有屬性,如果有變動的,就通知訂閱者。

2.實現乙個訂閱者watcher,可以收到屬性的變化通知並執行相應的更新函式,從而更新檢視。

JS常見設計模式 單例模式

乙個類只有乙個例項,並暴露出乙個點供全域性訪問 類 function login 原型 login.prototype hide function hide 單例方法 如果沒建立例項則建立例項並返回 否則返回已建立的例項 let getlogin function return instance l...

js中常見設計模式總結

1.只有乙個例項。2.可以全域性訪問。3.節省記憶體開銷 function single name single.prototype.getname function single.prototype.createobj function name return this obj let a sin...

js的設計模式

單例模式 應用 function msg msg.prototype.init function str var singlecase function instance.init text return instance var m1 singlecase hello var m2 singlec...