命令模式与策略模式有些类似, 在 JavaScript 中它们都是隐式的。
重要性: 较低
命令模式在 JavaScript 中也比较简单, 下面代码中对按钮
和命令
进行了抽离, 因此可以复杂项目中可以使用命令模式将界面的代码和功能的代码交付给不同的人去写。
const setCommand = function(button, command) {button.onClick = function() {command.excute()}}// -------------------- 上面的界面逻辑由A完成, 下面的由B完成const menu = {updateMenu: function() {console.log('更新菜单')},}const UpdateCommand = function(receive) {return {excute: receive.updateMenu,}}const updateCommand = UpdateCommand(menu) // 创建命令const button1 = document.getElementById('button1')setCommand(button1, updateCommand)