職責(zé)鏈模式的定義是:使多個(gè)對(duì)象都有機(jī)會(huì)處理請(qǐng)求,從而避免請(qǐng)求的發(fā)送者和接收者之間的耦合關(guān)系,將這些對(duì)象連成一條鏈,并沿著這條鏈傳遞該請(qǐng)求,直到有一個(gè)對(duì)象處理它為止。職責(zé)鏈模式的名字非常形象,一系列可能會(huì)處理請(qǐng)求的對(duì)象被連接成一條鏈,請(qǐng)求在這些對(duì)象之間依次傳遞,直到遇到一個(gè)可以處理它的對(duì)象,我們把這些對(duì)象稱為鏈中的節(jié)點(diǎn)。

如下圖所示:

移動(dòng)開發(fā)培訓(xùn),Android培訓(xùn),安卓培訓(xùn),手機(jī)開發(fā)培訓(xùn),手機(jī)維修培訓(xùn),手機(jī)軟件培訓(xùn)

移動(dòng)開發(fā)培訓(xùn),Android培訓(xùn),安卓培訓(xùn),手機(jī)開發(fā)培訓(xùn),手機(jī)維修培訓(xùn),手機(jī)軟件培訓(xùn)

/**
 * pre:職責(zé)鏈模式
 * 定義:一系列可能處理請(qǐng)求的對(duì)象鏈接成一條鏈,
 * 請(qǐng)求在這條鏈中傳遞,直到遇到一個(gè)可以處理它的對(duì)象。 */// --------- 示例 1 -----------/**
 * 某品牌手機(jī)銷售,交500元定金可得100元電商優(yōu)惠券,交300元可得50元優(yōu)惠券,
 * 沒有交定金的用戶只能進(jìn)行普通購(gòu)買,而且還不一定能買的到。
 * 將這一過程用代碼寫出來:
 * orderType: 1,交500定金;2,交300元定金,3,普通購(gòu)買
 * pay:true 已支付定金,false未支付定金
 * stock:手機(jī)庫(kù)存數(shù) */var order = (function() {    var favorCache = { // 優(yōu)惠配置
        1: [500, 100],        2: [300, 50]
    };    var normal = function(stock) { // 普通購(gòu)買
        if(stock > 0) {
            console.log("普通購(gòu)買.庫(kù)存數(shù):" + stock);
        } else {
            console.log("庫(kù)存不足.");
        }
   &
        
		

網(wǎng)友評(píng)論