职责链模式的定义是:使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系,将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。职责链模式的名字非常形象,一系列可能会处理请求的对象被连接成一条链,请求在这些对象之间依次传递,直到遇到一个可以处理它的对象,我们把这些对象称为链中的节点。

如下图所示:

移动开发培训,Android培训,安卓培训,手机开发培训,手机维修培训,手机软件培训

移动开发培训,Android培训,安卓培训,手机开发培训,手机维修培训,手机软件培训

/**
 * pre:职责链模式
 * 定义:一系列可能处理请求的对象链接成一条链,
 * 请求在这条链中传递,直到遇到一个可以处理它的对象。 */// --------- 示例 1 -----------/**
 * 某品牌手机销售,交500元定金可得100元电商优惠券,交300元可得50元优惠券,
 * 没有交定金的用户只能进行普通购买,而且还不一定能买的到。
 * 将这一过程用代码写出来:
 * orderType: 1,交500定金;2,交300元定金,3,普通购买
 * pay:true 已支付定金,false未支付定金
 * stock:手机库存数 */var order = (function() {    var favorCache = { // 优惠配置
        1: [500, 100],        2: [300, 50]
    };    var normal = function(stock) { // 普通购买
        if(stock > 0) {
            console.log("普通购买.库存数:" + stock);
        } else {
            console.log("库存不足.");
        }
   &