在系统沿着多个维度变化的同时,又不增加其复杂度并解耦
//比如要给一些元素绑定事件,做一些相同的处理
$('a1').click(function(){
$(this).css('background', '#000');
})
$('a2').click(function(){
$(this).css('background', '#fff');
})
$('a3').click(function(){
$(this).css('background', '#000');
})
//可用桥接模式把相同点提取出来
function changeColor(dom, color){
$(dom).css('background', color);
}
$('a1').click(function(){
changeColor(this, '#000');
})
$('a2').click(function(){
changeColor(this, '#fff');
})
$('a3').click(function(){
changeColor(this, '#000');
})
//解耦了事件与业务逻辑,这样以后修改需求只需要改changeColor函数即可
林秀栋的技术博客