简单工厂模式之前:简单的套路实现的
在讲简单工厂模式之前,我们先看个例子:
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 评论 855
发表评论
热门文章
自媒体博客Spimes主题45w 阅读Spimes主题专为博客、自媒体、资讯类的网站设计....
Splity博客双栏主题15w 阅读仿制主题,Typecho博客主题,昼夜双版设计,可....
vCard主题个人简历主题13w 阅读一款个人简历主题,可以简单搭建一下,具体也比较简单....
Spzac个人资讯下载类主题12w 阅读用于作品展示、资源下载,行业垂直性网站、个人博客,....
热评文章
自媒体博客Spimes主题424 评论 Splity博客双栏主题191 评论 Spzac个人资讯下载类主题89 评论 Splinx博客图片主题35 评论 Spzhi知识付费社区主题34 评论 三栏清新博客S_blog主题31 评论 vCard主题个人简历主题29 评论 Pure轻简主题29 评论
chenyu
4月7日
能不能支持deepseek