美文网首页
设计模式之3命令模式

设计模式之3命令模式

作者: 钱学敏 | 来源:发表于2018-06-03 11:39 被阅读0次

定义

命令模式中的命令指的是一个执行某些特定事情的指令。有时候需要向某些对象发送请求,但是并不知道请求的接收者是谁,也不知道被请求的操作是什么。比如在饭店点菜,我们可以点菜但是不用关心厨师是谁怎么做。

应用场景

把if else改为字典
如果要实现撤销操作,可以将每一步操作都存储到历史堆栈中,然后依次循环执行这些命令的undo操作,直到全部完成。

var makeCommand=function(receiver,state){
    return function(arguments){
        receiver[state]();
    }
}

var Ryu={
    attack:function(){
        console.log('攻击')
    },
    defense:function(){
        console.log('防御')
    },
    crouch:function(){
        console.log('蹲下')
    }
}

var command=makeCommand(Ryu,"attack")
command()

相关文章

网友评论

      本文标题:设计模式之3命令模式

      本文链接:https://www.haomeiwen.com/subject/vpkikftx.html