有關策略模式的簡單介紹可以檢視這篇文章:介紹
// 校驗策略
const validatestrategies =$/.
test
(value))}
,isnonempty
(value, errmsg)},
minlength
(value, length, errmsg)}}
// 校驗類
function
validator()
validator.prototype.
add=
function
(dom, rules)
= rule
const args = strategy.
split
(':'
)// 將多個引數用:分開,第乙個引數是策略型別
const strategytype = args[0]
return validatestrategies[strategytype]
.(dom,
[ dom.value,
...args.
slice(1
),errmsg
])})}
}validator.prototype.
validateform
=function()
}}const usernamedom =
const phonedom =
function
validatefunc()
,]) validator.
add(phonedom,
)const errmsg = validator.
validateform()
if(errmsg)
}validatefunc()
// 驗證表單
JavaScript 策略模式封裝表單驗證庫
直接上 html htmllang en head metacharset utf 8 title titletitle head body formid form p 使用者名稱 inputtype text name username p p 密碼 inputtype password name...
表單 驗證 如何利用策略模式優化表單驗證
在做移動端專案開發的時候,經常會遇到各種表單驗證,有時候不同的頁面,驗證規則是一樣的 如圖 之前專案裡的驗證 寫的很凌亂,最近剛好遇到這個模組的功能需要重構,於是對 做了大量的優化,記錄一下如何利用策略模式優化表單驗證的 之前我們的驗證 是這樣寫的,把驗證func寫到乙個公共模組裡面,然後每個方法返...
js 策略模式 實現表單驗證
簡單點說就是 實現目標的方式有很多種 你可以根據自己身情況選乙個方法來實現目標 所以至少有2個物件 乙個是策略類 乙個是環境類 上下文 然後自己就可以根據上下文選擇不同的策略來執行方案 策略模式的優點 1.策略模式利用組合 委託和多型等技術和思想,可以有效地避免多重條件選擇語句 2.策略模式提供了對...