JavaScript 模擬策略模式

2021-09-08 10:49:33 字數 935 閱讀 5759

/*

* * 模擬乙個介面,其方法會丟擲異常; */

function

flyinter () {}

flyinter.prototype.fly = function

() ;/**

* 實現乙個fly noway的方法; */

function

flynoways() {}

flynoways.prototype.fly = function

() ;/**

* 實現乙個fly with wings的方法; */

function

flywithwings () {}

flywithwings.prototype.fly = function

() ;/**

* 鴨子超類;建構函式中設定了乙個介面; */

function

duck()

duck.prototype.swim = function

() ;/**

* fly方法呼叫flyi介面的fly方法; */

duck.prototype.fly = function

() ;/**

* rubberduck繼承duck;建構函式中設定自己的fly物件; */

function

rubberduck ()

rubberduck.prototype = new

duck();

rubberduck.prototype.constructor =rubberduck;

delete

rubberduck.prototype.flyi;

var rduck = new

rubberduck();

//直接呼叫duck中的fly()方法即可;

rduck.fly();

javascript策略模式

var validator 驗證型別所對應的錯誤訊息 messages 當前需要使用的驗證型別 config 暴露的公開驗證型別 validate function data if type if checker result checker.validate data i if result re...

JavaScript之策略模式

定義 定義一系列的演算法,把它們乙個個封裝起來,並且使它們可以相互替換。乙個策略模式的實現至少包含兩部分 1.策略類,封裝了具體的演算法,負責具體計算過程。2.環境類,接收客戶的請求,將請求委託給某個策略類處理。比如下面的場景 乙個公司需要計算年終獎,不同績效的員工年終獎計算方式不同,績效s的員工,...

javascript 模擬監聽功能

setinterval initlogo,6000 function initlogo 如果是區域性重新整理頁面 監聽 則不能使用這種方法,因為頁面沒有重新整理,請求是每隔一段時間就會傳送請求,這樣請求數量就會以指數增長,這樣會導致server崩潰 function listening 則不會出現上...