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

/**
* 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("库存不足.");
}
&

