JavaScript设计模式经典之命令模式


Posted in Javascript onFebruary 24, 2016

一、命令模式概念

命令模式(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>

以上所述是小编给大家介绍的JavaScript设计模式经典之命令模式,希望对大家有所帮助!

Javascript 相关文章推荐
js计算页面刷新的次数
Jul 20 Javascript
给Flash加一个超链接(推荐使用透明层)兼容主流浏览器
Jun 09 Javascript
基于jquery的simpleValidate简易验证插件
Jan 31 Javascript
javascript中错误使用var造成undefined
Mar 31 Javascript
Vue2.0设置全局样式(less/sass和css)
Nov 18 Javascript
mui back 返回刷新页面的实例
Dec 06 Javascript
详解webpack import()动态加载模块踩坑
Jul 17 Javascript
Node.js在图片模板上生成二维码图片并附带底部文字说明实现详解
Aug 07 Javascript
layui 解决富文本框form表单提交为空的问题
Oct 26 Javascript
Vue状态模式实现窗口停靠功能(灵动、自由, 管理后台Admin界面)
Mar 06 Javascript
JavaScript ECMA-262-3 深入解析(一):执行上下文实例分析
Apr 25 Javascript
微信小程序实现列表的横向滑动方式
Jul 15 Javascript
JavaScript设计模式经典之工厂模式
Feb 24 #Javascript
JavaScript的设计模式经典之建造者模式
Feb 24 #Javascript
JavaScript的设计模式经典之代理模式
Feb 24 #Javascript
jQuery实现验证年龄简单思路
Feb 24 #Javascript
JavaScript实现99乘法表及隔行变色实例代码
Feb 24 #Javascript
JavaScript中Object.prototype.toString方法的原理
Feb 24 #Javascript
JavaScript判断变量是否为数组的方法(Array)
Feb 24 #Javascript
You might like
php 魔术函数使用说明
2010/02/21 PHP
php+js实现图片的上传、裁剪、预览、提交示例
2013/08/27 PHP
json的键名为数字时的调用方式(示例代码)
2013/11/15 PHP
ThinkPHP实现批量删除数据的代码实例
2014/07/02 PHP
php实现的太平洋时间和北京时间互转的自定义函数分享
2014/08/19 PHP
PHP 中提示undefined index如何解决(多种方法)
2016/03/16 PHP
人脸识别测颜值、测脸龄、测相似度微信接口
2016/04/07 PHP
js对图片base64编码字符串进行解码并输出图像示例
2014/03/17 Javascript
Angularjs中ng-repeat-start与ng-repeat-end的用法实例介绍
2016/12/31 Javascript
Webpack 服务器端代码打包的示例代码
2017/09/19 Javascript
nginx配置React静态页面的方法教程
2017/11/03 Javascript
详细分析JS函数去抖和节流
2017/12/05 Javascript
原生JavaScript实现的简单放大镜效果示例
2018/02/07 Javascript
vue中axios的封装问题(简易版拦截,get,post)
2018/06/15 Javascript
详解小程序缓存插件(mrc)
2018/08/17 Javascript
在node中使用jwt签发与验证token的方法
2019/04/03 Javascript
jQuery操作选中select下拉框的值代码实例
2020/02/07 jQuery
[01:04:14]OG vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
Python入门篇之正则表达式
2014/10/20 Python
Python如何实现守护进程的方法示例
2017/02/08 Python
Python学习教程之常用的内置函数大全
2017/07/14 Python
Python3多进程 multiprocessing 模块实例详解
2018/06/11 Python
python时间序列按频率生成日期的方法
2019/05/14 Python
Python产生一个数值范围内的不重复的随机数的实现方法
2019/08/21 Python
浅谈tensorflow模型保存为pb的各种姿势
2020/05/25 Python
python读写数据读写csv文件(pandas用法)
2020/12/14 Python
html5的localstorage详解
2017/05/09 HTML / CSS
使用phonegap创建联系人的实现方法
2017/03/30 HTML / CSS
会计系毕业个人自荐信格式
2013/09/23 职场文书
幼儿园教师培训制度
2014/01/16 职场文书
工作检讨书怎么写
2014/10/10 职场文书
领导班子三严三实心得体会
2014/10/13 职场文书
党的群众路线教育实践活动个人批评与自我批评
2014/10/16 职场文书
2015年项目工作总结
2015/04/29 职场文书
2019个人年度目标制定攻略!
2019/07/12 职场文书
python学习之panda数据分析核心支持库
2021/05/07 Python