js的設計模式

2021-10-04 01:40:05 字數 1513 閱讀 2798

單例模式-應用

function msg()

msg.prototype.init = function(str)

var singlecase = (function ()

instance.init(text);

return instance;

}})();

var m1 = singlecase("hello");

var m2 = singlecase("world");

console.log(m1===m2);

組合模式:

class gohome

}class opencomputer

}class openxiaoai

}// 組合器,用來組合功能

class comb

// 用來組合的功能,接收要組合的物件

add(task)

// 用來批量執行的功能

action() );}}

var c = new comb();

// 提前將,將來要批量操作的物件,組合起來

c.add( new gohome() );

c.add( new opencomputer() );

c.add( new openxiaoai() );

// 等待何時的時機,執行組合器的啟動功能

c.action();

觀察者模式:

function observer()

this.msg = {};

}// 向小本本中新增事件,訊息

observer.prototype.on = function(type, cb)else

console.log(this.msg);

}observer.prototype.emit = function(type)

// 如果已經記錄了資訊,那麼就去執行這個訊息對應的所有的處理函式

this.msg[type].foreach(val=>)}}

observer.prototype.off = function(type, cb))

// 判斷是否獲取到重複的函式

if(onoff)}}

// 首先建立乙個觀察者物件

var ob = new observer();

// 準備兩個處理函式

function a()

function b()

// 隨便繫結乙個訊息,給了兩個處理函式

ob.on("玩手機",a);

ob.on("玩手機",b);

// 模擬事件的執行

ob.emit("玩手機");

// 刪除乙個處理函式

ob.off("玩手機", b);

// 模擬事件的執行

ob.emit("玩手機");

JS設計模式

什麼是模式?什麼是設計模式?設計模式是解決軟體設計常見問題的可復用方案 什麼是反模式?反模式是一種針對某個特定問題的不良解決方案,該方案會導致槽糕的情況發生 單例模式?皇帝單例模式 var kingsingleton function return 皇帝存在返回皇帝 return instance ...

js 設計模式

1.單例模式 保證乙個類只有乙個例項,並提供乙個訪問它的全域性訪問點 呼叫乙個類,任何時候返回的都是同乙個例項 class singleton getname static getinstance name return this.instance const instancea singleton...

js 設計模式

廣義上,模式是乙個可以用來產生其他事物的模板或者模型。在軟體開發過程中,模式是指乙個通用問題的解決方案,用抽象化表示和解決一類問題的模板。學習設計模式,有助於寫出可復用和可維護性高的程式 設計模式的原則是 找出 程式中變化的地方,並將變化封裝起來 1.工廠模式 即,函式裡面返回單個物件。缺點就是建立...