ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
<hr> <div id="div1"><h3> <font color=red> 组合模式 </font> <h3></div> 将一系列具有相同方法的对象合并成一个具有该方法的组合对象,统一执行 组合模式将对象组合成树形结构,以表示“部分-整体”的层次结构。同时利用对象的多态性,使得单个对象的使用和组合对象的使用具有一致性。 例如我们通过命令模式定义了一系列的命令,并且希望组合这些命令形成一个命令宏统一的执行。 ```javascript // 定义一些命令 var openDoorCommand = { execute: function(){ console.log('开门') } } var openPcCommand = { execute: function(){ console.log('开电脑') } } var openLolCommand = { execute: function(){ console.log('撸一局') } } // 定义命令宏组合命令 var MarcoCommand = { list: [], add: function (command) { this.list.push(command) }, execute: function () { this.list.forEach(function(command) { command.execute() }) } } MarcoCommand.add(openDoorCommand) MarcoCommand.add(openPcCommand) MarcoCommand.add(openLolCommand) MarcoCommand.execute() // 开门 开电脑 撸一局 ```