命令模式(Command)的定义是:用来对方法调用进行参数化处理和传送,经过这样处理过的方法调用可以在任何需要的时候执行。接下来通过本文给大家介绍 JavaScript 设计模式经典之命令模式,需要的朋友参考下
Javascript 是一种由 Netscape 的 LiveScript 发展而来的原型化继承的基于对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言,比如 Perl,遗留的速度问题,为客户提供更流畅的浏览效果。
一、命令模式概念
命令模式(Command)的定义是:用来对方法调用进行参数化处理和传送,经过这样处理过的方法调用可以在任何需要的时候执行。也就是说该模式旨在将函数的调用、请求和操作封装成一个单一的对象,然后对这个对象进行一些列的处理。他也可以用来消除调用操作的对象和实现操作的对象之间的耦合。这为各种具体的类的更换带来了极大的灵活性。
二、命令模式的作用和注意事项
模式作用:
1、将函数的封装、请求、调用结合为一体
2、调用具体的函数解耦命令对象与接收对象
3、提高程序模块化的灵活性
注意事项:
1、不需要借口一致,直接调用函数即可,以免造成浪费
三、命令模式代码和实战总结
- <!DOCTYPE html>
- <html>
- <head lang="en">
- <meta charset="UTF-8">
- <title>
- </title>
- </head>
- <body>
- <script>
- //1.一个连有炮兵和步兵,司令可以下命令调动军队打仗
- var lian = {};
- lian.paobing = function(pao_num) {
- console.log(pao_num + "门炮准备战斗");
- }
- lian.bubing = function(bubing_num) {
- console.log(bubing_num + "人准备战斗");
- }
- lian.lianzhang = function(mingling) {
- lian[mingling.type](mingling.num);
- }
- //司令下命令
- lian.lianzhang({
- type: "paobing",
- num: 10
- });
- lian.lianzhang({
- type: "bubing",
- num: 100
- });
- </script>
- </body>
- </html>
来源: http://www.phperz.com/article/17/0219/266989.html