zoukankan      html  css  js  c++  java
  • [设计模式]工厂模式

    工厂模式也是Javascript比较常用的模式。
    他主要是提供一个创建一系列相关或相互依赖对象的接口,而不一定要指定它们具体的类。
    工厂模式的精髓在于可以选择类或函数等,通常是用来动态创建对象。
    是不是看起来有点难懂?还是看代码吧。

    //这是一个工厂模式例子(隐式选择)
    function createXML(){
    if(typeof XMLHttpRequest != "undefined"){
    return new XMLHttpRequest();
    }else if(typeof window.ActiveXObject != "undefined"){
    return new ActiveXObject("MSXML2.XMLHttp");
    }
    }

    var xmlHttp = createXML();

    或许你之前也会这样创建过XHR对象,或许你之前不懂什么工厂模式。
    原来就这样不知不觉地运用了工厂模式。

    或者也可以作为类的方法:

    var MainClass = function(){}; //主构造器
    MainClass.prototype = {
    FactoryMode:function(){}; //子类选择器
    }

    或者可以选择类:

    var selectClass = function(key){
    if(key == 1){
    return Class1;
    }else if(key == 15){
    return Class2;
    }else{
    return Class3;
    }
    }

    或者选择配置:

    function User(type){
    if(type == "Admin"){
    this.config = {};
    }else if(type == "SuperAdmin"){
    this.config = {};
    }else{
    this.config = {};
    }
    }

    User.prototype = {
    this.fontColor = this.config.fontColor;
    this.fontSize = this.config.fontSize;
    ...
    }





  • 相关阅读:
    凯撒密码、GDP格式化输出、99乘法表
    字符串基本操作
    第四次作业
    第三次作业
    012黄意芳
    test指令的测试功能
    date命令
    zendstudio 10 项目导入乱码的解决
    用modelsim和debussy协同仿真VHDL Verilog的流程
    使用Debussy+ModelSim快速查看前仿真波形
  • 原文地址:https://www.cnblogs.com/zzbo/p/2349686.html
Copyright © 2011-2022 走看看