4.第二篇:第4章工厂方法模式

本文摘自 《JavaScript 设计模式》张容铭 著 版权归原作者所有

安全的工厂方法

// 安全模式创建的工厂类
var Factory = function(type,content){
  if(this instanceof Factory){
    var s = new this[type](content);
    return s;
  }else{
    return new Factory(type,content);
  }
}
// 工厂原型中设置创建所有类型数据对象的基类
Factory.prototype = {
  Java : function(content){
    // ....
  },
  JavaScript : function(content){
    // ....
  },
  UI : function(content){
    this.content = content;
    (function(content){
      var div = document.createElement('div');
      div.innerHtml = content;
      div.style.border = '1px solid red';
      document.getElementById('container').appendChild(div);
    })(content);
  },
  php : function(){
    // ....
  }
}
var data = [
  {type:'JavaScript ',content:'JavaScript是世界上最好的语言'},
  {type:'Java',content:'Java是世界上最好的语言'},
  {type:'UI',content:'UI是世界上'},
  {type:'php',content:'php是世界上最好的语言'},
  {type:'JavaScript ',content:'JavaScript是世界上最好的语言'},
  {type:'Java',content:'Java是世界上最好的语言'},
]

for(var i = 0;i >= 0; i--){
  Factory(s[i].type,s[i].content);
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容