美文网首页
设计模式之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