组合模式

Posted tujw

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了组合模式相关的知识,希望对你有一定的参考价值。

技术图片
// 组合模式

var MacroCommand = function () {
    return {
        commandsList : [],
        add : function (command) {
            this.commandsList.push(command);
        },
        execute : function () {
            for(var i = 0, command; command = this.commandsList[i]; i++ ) {
                command.execute();
            }
        }
    };
};

var openAcCommand = {
    execute : function () {
        console.log(‘打开空调‘);
    }
};

var openTvCommand = {
    execute : function () {
        console.log(‘打开电视‘);
    }
};

var openSoundCommand = {
    execute : function () {
        console.log(‘打开音响‘);
    }
};

var macorCommand = MacroCommand();
macorCommand.add(openTvCommand);
macorCommand.add(openSoundCommand);

var mainCommand = MacroCommand();

mainCommand.add(macorCommand);
mainCommand.add(openAcCommand);

mainCommand.execute();
View Code

 

以上是关于组合模式的主要内容,如果未能解决你的问题,请参考以下文章

如何组合绑定片段而不将它们包装在 XML 文字中

48个值得掌握的JavaScript代码片段(上)

Tailwind.css 体验总结

Tailwind.css 体验总结

用于从 cloudkit 检索单列的代码模式/片段

精心收集的 48 个 JavaScript 代码片段,仅需 30 秒就可理解!(转载)