简单工厂模式之前:简单的套路实现的
在讲简单工厂模式之前,我们先看个例子:
1.用几个函数去执行几个不同的弹出:
function funA(){
alert('a');
}
function funB(){
alert('b');
}
function funC(){
alert('c');
}
如果我们想要弹出a,b,c我们就需要调用不同的方法funA,funB,funC。但是如果我们想弹出的东西很多呢,每次调用都需要看是需要调用哪个方法js 抽象工厂模式,会不会很麻烦。所以我们可以再包一个方法来做处理js 抽象工厂模式,如下所示:
function choose(type){
switch(type){
case 'funA' : funA(); break;
case 'funB' : funB(); break;
default : funC();
}
}
如此一来,我们在调用的时候就统一使用choose这个方法了。
而简单工厂模式就是基于这样一个简单的套路实现的。
首先来看简单工厂模式的定义:Simple Factory,又叫静态工厂方法,由一个工厂对象决定创建某一种产品对象的实例。主要用来创建同一类对象。
正规意义上而言,一个简单工厂需要具备的条件是这样的:
抽象: 定义一个最初的对象(告诉你有这么一个东西);
工厂: 用于创建对象,也即对象的大本营(告诉你这个东西是一堆宝箱,你可以选择要哪个);
具体对象: 最具象的对象,也就是某个大本营(告诉你这个宝箱中都有什么)
好吧,感觉是要贴点代码出来了~
1.我们先创建一个person原型,代码如下:
<p><pre>var Person = function(name,methods){
if(arguments.length > 2){
throw new Error('参数过多');
};
this.name = name;
this.methods = [];
for(var i=0,l=methods.length;i
文章由官网发布,如若转载,请注明出处:https://www.veimoz.com/1761
0 评论
651
发表评论
热门文章
自媒体博客Spimes主题34w 阅读
Spimes主题专为博客、自媒体、资讯类的网站设计....
vCard主题个人简历主题13w 阅读
一款个人简历主题,可以简单搭建一下,具体也比较简单....
Splity博客双栏主题11w 阅读
仿制主题,Typecho博客主题,昼夜双版设计,可....
Spzac个人资讯下载类主题11w 阅读
用于作品展示、资源下载,行业垂直性网站、个人博客,....
热评文章
自媒体博客Spimes主题418 评论
Splity博客双栏主题187 评论
Spzac个人资讯下载类主题89 评论
Splinx博客图片主题35 评论
Spzhi知识付费社区主题34 评论
三栏清新博客S_blog主题30 评论
vCard主题个人简历主题29 评论
Pure轻简主题28 评论
尘集杂货铺和官网1t5-cn
11月11日
[已回复]
希望主题和播放器能支持SQLite数据库,AI能多个讯飞星火