深入理解JavaScript系列(34):设计模式之命令模式详解
介绍
命令模式(Command)的定义是:用于将一个请求封装成一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或者记录请求日志,以及执行可撤销的操作。也就是说改模式旨在将函数的调用、请求和操作封装成一个单一的对象,然后对这个对象进行一系列的处理。此外,可以通过调用实现具体函数的对象来解耦命令对象与接收对象。
正文
我们来通过车辆购买程序来展示这个模式,首先定义车辆购买的具体操作类:
$(function(){
varCarManager={
//请求信息 requestInfo:function(model,id){ return'Theinformationfor'+model+ 'withID'+id+'isfoobar'; },
//购买汽车 buyVehicle:function(model,id){ return'YouhavesuccessfullypurchasedItem' +id+',a'+model; },
//组织view arrangeViewing:function(model,id){ return'Youhavesuccessfullybookedaviewingof' +model+'('+id+')'; } }; })();