作用:
根據(jù)不同的條件去進(jìn)行相應(yīng)的業(yè)務(wù)邏輯處理
就好比針對(duì)每種情況都制定對(duì)應(yīng)的方案,觸發(fā)條件就啟動(dòng)某項(xiàng)方案策略文章來源:http://www.zghlxwxcb.cn/news/detail-831263.html
示例:
//策略對(duì)象
const arrangeFun = {
model1:(value1,value2,value3,value4)=>{
return `${value1}${value2}${value3}:${value4}`
},
model2:(value1,value2,value3,value4)=>{
return `${value4},${value3}${value1}${value2}`
},
model3:(value1,value2,value3,value4)=>{
return `${value2}!${value4}${value3}${value1}`
},
}
class StringJoint{
constructor(fun){
this.useModel = (value1,value2,vlaue3,vlaue4)=>{
return fun(value1,value2,vlaue3,vlaue4)
}
}
}
const model1 = new StringJoint(arrangeFun.model1)
const model2 = new StringJoint(arrangeFun.model2)
const model3 = new StringJoint(arrangeFun.model3)
console.log(model1.useModel('我的','同學(xué)','是','秋雅'))
console.log(model2.useModel('我的','同學(xué)','是','秋雅'))
console.log(model3.useModel('我的','同學(xué)','是','秋雅'))
//用這四個(gè)字進(jìn)行造句,可以有很多的策略,我們定義了一個(gè)集中的策略對(duì)象
//然后生成造句的實(shí)例,并將方法保存在實(shí)例當(dāng)中
//實(shí)例調(diào)用自己身上的方法,就可以了
文章來源地址http://www.zghlxwxcb.cn/news/detail-831263.html
到了這里,關(guān)于js設(shè)計(jì)模式:策略模式的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!