沉澱js 設計模式 01

2021-09-24 06:45:49 字數 1168 閱讀 1608

建立自己的工廠類

通過工廠模式返回乙個新的object

function createfactory (name, age, address) 

return o;

}const p1 = createfactory('lee', 27, 'hangzhou');

p1.addmethods('like', function (s) )

複製**

// 抽象工廠方法

const factory = function (subtype, supertype) ;

// 繼承父類屬性和方法

f.prototype = new factory[supertype]();

// 子類繼承父類

subtype.prototype = new f();

// 將子類的 constructor 指向子類

subtype.prototype.constructor = subtype;

}}// 汽車抽象類

factory.car = function

() factory.car.prototype = ,

getspeed: function

() }factory.bus = function

() factory.bus.prototype = ,

getspace: function

() }factory.truck = function

() factory.truck.prototype = ,

getload: function

() }// 新建bmw類

const bmw = function (price, speed)

// 工廠繼承抽象類

factory(bmw, 'car');

// 重寫原型方法

bmw.prototype = ,

getspeed: function

() }const b = new bmw(30000, 300);

b.getprice(); // 30000

b.getspeed(); // 300

複製**

老鐵歡迎指導github

設計模式 01 設計模式綱要

理解松耦合設計思想 掌握物件導向設計原則 掌握重構技法改善設計 掌握gof 核心設計模式 每乙個模式描述了乙個在我們周圍不斷重 生的問題,以及該問題的解決方案的核心。這樣,你就能一次又一次 地使用該方案而不必做重複勞動 christopher alexander 底層思維 向下,如何把握機器底層從微...

設計模式 01單例設計模式

所謂類的單例設計模式,就是採取一定的方法保證在整個軟體系統中,對某個類只能存在乙個物件例項,並且該類只提供乙個取得其物件例項的方法 靜態方法 比如hibernate中的sessionfactory,它充當的就是資料儲存源的 並負責建立session物件。sessionfactory並不是輕量級的,一...

設計模式01 原因

第一,雖然網上有很多教程,但大都不得要領,導致設計模式看起來非常複雜,就個人而言,從畢業到現在,反覆學習過不下10遍,但由於工作中使用場景有限,不久就又忘記了。所以計畫整理出乙個適合個人的學習or複習的教程。第二,設計模式,本來是漸進的演化,或者基於需求驅動的,而非靜態的結構 也就是說應該是原有結構...