策略模式:定義一系列的演算法,並且把它們封裝起來,而且他們可以相互替換。
這裡我舉個在專案中遇到的問題,比如說要驗證乙個物件中的屬性的值是否合法,一開始我是通過不停的else if,現在想想,真的有點蠢了。
var validator = ,
//配置資料
config: {},
//錯誤資訊
messages: ,
validate: function
(data) }}
}},
haserror: function
() }
validator.methods.isnum = ,
message: "請輸入數字!"
} validator.methods.isphone = $/;
return reg.test(data);
},message: '手機號碼不正確!'
} validator.methods.isemail = ,
message: '郵箱位址不正確!'
} var data =
validator.config =
validator.validate(data);
if (validator.haserror())
else
JS版設計模式 Iterator
var iterator function next function rewind function current function var it iterator while it.hasnext it.rewind console.log it.current 1我們經常會用for迴圈遍歷陣...
js設計模式 模版設計模式
設計模式處處透漏者前輩們的指揮,在眾多設計模式中模版設計模式是軟體設計中最常用,最正統的模式,也是本人最喜歡的模式,其就像一顆顆螺絲釘處處體現在軟體設計和其他模式中 父類定義乙個模板結構,將部分具體內容延遲到子類去實現 在軟體系統設計中最常用的就是介面 抽象類 類 設計模式,如下圖 再此模式中介面定...
設計模式 模版設計模式
模版設計模式的概念或者定義 定義乙個操作中演算法的框架,而將一些步驟延遲到子類中,使得子類可以不改變演算法的結構即可重定義該演算法中的某些特定步驟。以前雖然經常在專案中使用模版設計模式,特別在baseactivity,basefragement,basefragementactivity,basea...