设计模式学习笔记之 - 简单工厂模式
作者:潇洒人生 来源:潇洒人生blog 时间:2009-03-11 13:38:00
俺比较笨,对太专业的书一直不感冒,看了就想睡觉。
最近李明同学传了本“大话设计模式”电子版。
偶然翻了翻,感觉还满通俗的,正适合我这样的懒人学习。
设计模式早听过也了解过点,可一直没怎么系统的学过,现在才发现这东东还满有趣的。但愿这
次我能坚持看完。今天先把第一章“简单工厂模式”的练习贴上来备忘。书上是Java的例子,俺
照葫芦画了个JS版。(不知像不像,高手请飘过..自行 * 也成)
<script language="JavaScript">
<!--
// class operation
function operation(){
this.numA = 0;
this.numB = 0;
this.getResult = function(){
return null;
}
}
// ext method
function add(){
var o = new operation();
o.getResult = function(){
return o.numA + o.numB;
}
return o;
}
function sub(){
var o = new operation();
o.getResult = function(){
return o.numA - o.numB;
}
return o;
}
// class operation factory
function calc(type){
var op = null;
switch(type){
case "+" : op = new add(); break;
case "-" : op = new sub(); break;
}
return op;
}
// show
var sum = new calc('+');
sum.numA = 10;
sum.numB = 79;
alert(sum.getResult());
var sum = new calc('-');
sum.numA = 10;
sum.numB = 79;
alert(sum.getResult());
//-->
</script>
标签:设计,设计模式,笔记,JavaScript
0
投稿
猜你喜欢
python判断字符串是否纯数字的方法
2022-09-09 03:25:38
JavaScript实现网页动态生成表格
2024-04-16 09:24:00
MySQL的数据库常用命令 超级实用版分享
2012-01-05 18:58:00
python编写扎金花小程序的实例代码
2021-01-28 23:09:44
Python+Tableau广东省人口普查可视化的实现
2022-02-12 21:53:59
python实现共轭梯度法
2021-10-06 22:39:01
HTML5 第二份草案发布
2008-06-17 17:42:00
SqlServer 2005/2008数据库被标记为“可疑”的解决办法
2024-01-18 14:07:14
在Python的Django框架中实现Hacker News的一些功能
2023-11-24 19:27:46
MySQL优化教程之慢查询日志实践
2024-01-24 11:22:57
python数据预处理 :数据共线性处理详解
2022-06-29 09:46:24
MySQL六种约束的示例详解
2024-01-16 19:15:38
几款黑体的测试和介绍
2008-07-18 17:09:00
利用GAE&Google Gears做了一个简单的AJAX代理
2009-04-29 12:42:00
MySQL数据库操作DQL正则表达式
2024-01-14 13:04:48
sql无效字符 执行sql语句报错解决方案
2023-06-24 19:47:45
Golang中channel的原理解读(推荐)
2024-02-08 15:41:38
详解php用static方法的原因
2023-11-20 19:20:45
JavaScript使用readAsDataUrl方法预览图片
2024-05-02 17:28:41
对numpy中数组转置的求解以及向量内积计算方法
2023-01-23 16:39:52