javascript 设计模式之工厂模式
工厂模式定义一个用于创建对象的接口,这个接口由子类决定实例化哪一个类.该模式使一个类的实例化延迟到了子类.而子类可以重写接口方法以便创建的时候指定自己的对象类型(抽象工厂).
这个模式十分有用,尤其是创建对象的流程赋值的时候,比如依赖于很多设置文件等.并且,你会经常在程序里看到工厂方法,用于让子类类定义需要创建的对象类型.
模式的作用:
1.对象的构建十分复杂.
2.需要依赖具体的坏境创建不同的实例.
3.处理大量具有相同属性的小对象.
注意事项:
1.不能滥用工厂,有时候仅仅是给代码增加复杂度.
以下是 demo 代码
var gongchang = {}; gongchang.chanyifu = function(argument){ this.gongren = 50; alert("我们有"+this.gongren+"工人"); }; gongchang.chanxie = function(){ alert("产鞋子"); }; gongchang.yunshu = function(){ alert("运输"); }; gongchang.changzhang = function(para){ // js return new gongchang[para](); }; var me = gongchang.changzhang('chanyifu'); alert(me.gongren);