JavaScript设计模式经典之工厂模式
作者:bea
一、工厂模式概念 工厂模式定义一个用于创建对象的接口,这个接口由子类决定实例化哪一个类。该模式使一个类的实例化延迟到了子类。而子类可以重写接口方法以便创建的时候指定自己的对象类型(抽象工厂)。 这个模式十分有用,尤其是创建对象的流程赋值的时候,比如依赖于很多设置文件等。并且,你会经常在程序里看到工厂方法,用于让子类定义需要创建的对象类型。 二、工厂模式的作用和注意事项 模式作用: 1、对象构建十分复杂--我们穿鞋很简单,但是制作鞋子的过程十分复杂 2、需要依赖具体的环境创建不
一、工厂模式概念
工厂模式定义一个用于创建对象的接口,这个接口由子类决定实例化哪一个类。该模式使一个类的实例化延迟到了子类。而子类可以重写接口方法以便创建的时候指定自己的对象类型(抽象工厂)。
这个模式十分有用,尤其是创建对象的流程赋值的时候,比如依赖于很多设置文件等。并且,你会经常在程序里看到工厂方法,用于让子类定义需要创建的对象类型。
二、工厂模式的作用和注意事项
模式作用:
1、对象构建十分复杂--我们穿鞋很简单,但是制作鞋子的过程十分复杂
2、需要依赖具体的环境创建不同的实例--工厂可以做鞋子,做衣服,工厂可以做我需要的鞋子(鞋子不同),然后送到指定的地方(地方可以不同),可以理解为不同的实例
3、处理大量具有相同属性的小对象--比如买一双鞋,没必要找工厂生产
注意事项:
1、不能滥用工厂,有时候仅仅是给代码增加复杂度--如上3
三、工厂模式代码和实战总结
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script>
//1.工厂应该有厂长来决定运行到底哪条产品线
//2.消费者-》子类
var gongchang = {};
gongchang.chanyifu = function(){
this.gongren = 50;
alert("我们有"+this.gongren);
}
gongchang.chanxie = function(){
this.gongren = 100;
alert("产鞋子");
}
gongchang.yunshu = function(){
this.gongren = 10;
alert("运输");
}
gongchang.changzhang = function(para){
return new gongchang[para]();
}
var me = gongchang.changzhang("chanxie");
alert(me.gongren);
</script>
</body>
</html>
以上所述是小编给大家介绍的JavaScript设计模式经典之工厂模式,希望对大家有所帮助!
猜你喜欢
您可能感兴趣的文章:
- jquery实现列表上下移动功能
- js简单判断移动端系统的方法
- jquery ztree实现树的搜索功能
- jquery ztree异步搜索(搜叶子)实践
- JQuery ztree 异步加载实例讲解
- Node.js编写组件的三种实现方式
- JS根据浏览器窗口大小实时动态改变网页文字大小的方法
- 你所未知的3种Node.js代码优化方式
- jQuery使用contains过滤器实现精确匹配方法详解
- 原生javascript实现addClass,removeClass,hasClass函数
- javascript随机抽取0-100之间不重复的10个数
- JavaScript实现多种排序算法
- JavaScript中的时间处理小结
- JS设置cookie、读取cookie
- jquery form表单获取内容以及绑定数据
- javascript cookie的简单应用
- javascript的正则匹配方法学习
- 适用于javascript开发者的Processing.js入门教程
- JavaScript设计模式经典之命令模式