javascript 简单工厂

function detail() {
    this.imgArr = [];
    this.codeArr = [];
}
detail.prototype.addimg = function(img) {
    this.imgArr.push(img);
};
detail.prototype.addcode = function(code) {
    this.codeArr.push(code);
};
detail.prototype.show = function() {
    $.each(this.imgArr, function(index, val) {
        $(‘#resDiv‘).html($(‘#resDiv‘).html() + val);
    });
    $.each(this.codeArr, function(index, val) {
        $(‘#resDiv‘).html($(‘#resDiv‘).html() + val);
    });
};
var detailFactory = {};
var d1 = new detail();
d1.addimg(‘img1‘);
d1.addcode(‘code1‘);
var d2 = new detail();
d2.addimg(‘img2‘);
d2.addcode(‘code2‘);

detailFactory.df1 = d1;
detailFactory.df2 = d2;

$(function() {
    var r = Math.random();
    if (r > 0.5) {

        detailFactory.df2.show();
    } else {

        detailFactory.df1.show();
    }

});
时间: 2024-11-02 16:30:57

javascript 简单工厂的相关文章

javascript 简单工厂模式

? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 var Bicycle = new Interface("Bicycle",[

使用javascript完成一个简单工厂设计模式。

在JS中创建对象会习惯的使用new关键字和类构造函数(也是可以用对象字面量). 工厂模式就是一种有助于消除两个类依赖性的模式. 工厂模式分为简单工厂模式和复杂工厂模式,这篇主要讲简单工厂模式. 简单工厂模式:使用一个类来生成实例. 复杂工厂模式:使用子类来决定一个成员变量应该是哪个具体的类的实例. 简单工厂模式: 常用对象方法创建和调用 var BallShop = function(){}; BallShop.prototype = { sellBall : function(model){

【Javascript设计模式】第二课 神奇的魔术师——简单工厂模式

所谓简单工厂模式就是由一个方法来决定到底要创建那个类的实例,而这些实例经常都拥有相同的接口. 简单工厂模式主要运用一下几种情况(添加个人理解) 1.对象的构建有规律性,大部分相同只有个别不同,重复代码多 2.需要依赖具体环境创建不同的实例 3.处理大量具有相同属性的小对象 具体我们来看一个小例子: 大家在开发过程中经常遇到登陆模块,首先看以下的的具体的需求: 1.用户在输入框中输入的内容不符合规范,需要定义一个提示框提示:"您输入的内容不符合规范,请重新输入" 2.用户登陆提示用户不存

Javascript设计模式理论与实战:简单工厂模式

通常我们创建对象最常规的方法就是使用new关键字调用构造函数,这会导致对象之间的依赖性.工厂模式是一种有助于消除类之间依赖性的设计模式,它使用一个方法来决定要实例化哪一个类.本文详细介绍了简单工厂模式的理论,并且举例说明了简单工厂模式的具体应用. 基本介绍 简单工厂模式是工厂模式中最基本的一种.通过定义一个工厂类,根据参数实例化具体的某个产品类. 举例说明 我们举个例子进行说明:假设我们开发一个旅游行业网站,网站上面销售机票,酒店等产品.一个用户准备购买一张机票.我们可以定义相关类如下: 1 v

设计模式简单工厂之我见

最近开始学习JavaScript的设计模式.首先接触到的是简单工厂Simple Factory,有点小小的感悟.归结起来就是:明明可以 new A(),为什么偏偏要 createObject("A") 呢? 关于简单工厂这种设计模式,网上有很多文章讲了实现思路.用JavaScript可以实现如下: /** 版本1:普通实现 ************************ */ (function v1() { // 具体类A function A() { } // 具体类B func

javascript 之工厂方法模式

1. 简单工厂模式 说明:就是创建一个工厂类,里面实现了所对同一个接口的实现类的创建. 但是好像JavaScript 好像没有 接口 这号东西,所以我们去掉接口这个层; 当然,我们这里的 实现类 下的成员变量,方法应该都是一样的: 例如:这时举短信发送跟邮件发送的例子;1>. 邮件发送[实现]类 function MailSender() { this.to = ''; this.title = ''; this.content = ''; } MailSender.prototype.send

简单工厂模式,构造函数模式,原型模式相关

1.简单工厂模式 :无法确定对象类型 2.构造函数模式 :私有话的问题 3.原型模式 // 1简单工厂模式 function CreatPerson(name,age,sex){ var obj=new Object(); obj.name=name; obj.age=age; obj.sex=sex; obj.sayName=function(){ console.log("姓名:"+this.name+" 年龄:"+this.age+" 性别:&quo

《JS设计模式笔记》 2,简单工厂模式

1 <script type="text/javascript"> 2 //简单工厂模式 3 //定义:由一个方法来决定到底要创建哪个类的实例,而这些实例经常拥有相同的接口.其实例在编译的时候不确定,而是在执行的时候确定. 4 var request1=Request("cgi.xx.com/xxx","get"); 5 request1.start(); 6 request1.done(fn); 7 var request2=Req

简单工厂模式

目前正在看<大话设计模式>,写此系列的文章记录下学习的经过. 简单工厂模式 先看如下代码,使用面向对象的原理实现计算器功能 Operation运算类 1 public class Operation 2 { 3 private double numberA = 0; 4 private double numberB = 0; 5 6 public double NumberA 7 { 8 get { return numberA; } 9 set { numberA = value; } 10