这篇文章主要为大家展示了“JavaScript设计模式之工厂模式的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“JavaScript设计模式之工厂模式的示例分析”这篇文章吧。
工厂模式定义一个用于创建对象的接口,这个接口由子类决定实例化哪一个类。该模式使一个类的实例化延迟到了子类。而子类可以重写接口方法以便创建的时候指定自己的对象类型(抽象工厂)。
这个模式十分有用,尤其是创建对象的流程赋值的时候,比如依赖于很多设置文件等。并且,你会经常在程序里看到工厂方法,用于让子类定义需要创建的对象类型。
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;
console.log("我们有"+this.gongren);
}
gongchang.chanxie = function(){
this.gongren = 100;
console.log("产鞋子");
}
gongchang.yunshu = function(){
this.gongren = 10;
console.log("运输");
}
gongchang.changzhang = function(para){
return new gongchang[para]();
}
var we = gongchang.changzhang("chanyifu");
var me = gongchang.changzhang("chanxie");
console.log(me.gongren);
var ys = gongchang.changzhang("yunshu");
console.log(ys.gongren);
</script>
</body>
</html>
使用在线HTML/CSS/JavaScript代码运行工具 http://tools.jb51.net/code/HtmlJsRun测试运行效果如下:
以上是“JavaScript设计模式之工厂模式的示例分析”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。