JavaScript 設計模式之工廠模式

2021-09-08 01:21:03 字數 584 閱讀 5101

工廠模式的定義

工廠模式定義乙個用於建立物件的介面,這個介面由子類決定例項化哪乙個類。該模式使乙個類的例項化延遲到了子類。而子類可以重寫介面方法以便建立的時候指定自己的物件型別。

工廠模式的使用場景

以下幾種情景下工廠模式特別有用:

(1)物件的構建十分複雜

(2)需要依賴具體環境建立不同例項

(3)處理大量具有相同屬性的小物件

什麼時候不該用工廠模式

不濫用運用工廠模式,有時候僅僅只是給**增加了不必要的複雜度,同時使得測試難以執行下去。

舉個簡單的例子:頁面上需要根據下拉框選擇不同的選項,下面的頁面展示不同的內容

一、頁面展示內容:

文字**1

鏈結**2

二、工廠模式js:

三、呼叫:

根據選擇不同的選項進行不同內容的展示,只需要把型別引數傳進去即可。

另外**的不同**也可以使用工廠模式進行切換樣式,個人覺得。

分類:

JavaScript設計模式之工廠模式

工廠模式是用來建立物件的一種最常用的設計模式。把建立物件的具體邏輯封裝在乙個函式中,那麼這個函式就可以被視為乙個工廠。工廠模式根據抽象程度的不同可以分為 簡單工廠,工廠方法和抽象工廠。簡單工廠模式又叫靜態工廠模式,由乙個工廠物件決定建立某一種產品物件類的例項。主要用來建立同一類物件的不同例項。fun...

JavaScript 設計模式之工廠模式

一 模式概念解讀 1.工廠模式概念文字解讀 工廠模式定義乙個用於建立物件的介面,這個介面由子類決定例項化哪乙個類。該模式使乙個類的例項化延遲到了子類。而子類可以重寫介面方法以便建立的時候指定自己的物件型別 抽象工廠 這個模式十分有用,尤其是建立物件的流程賦值的時候,比如依賴於很多設定檔案等。並且,會...

javaScript設計模式之裝飾者模式

裝飾者模式能夠在不改變物件自身的基礎上,在程式執行期間對物件動態的新增職責。與繼承相比,裝飾者是一種更加輕便靈活的做法,這是一種 即用即付 的方式。var plane function plane.prototype.fire function var missiledecorator functi...