myfreax

javascript高级编程-工厂模式

工厂模式是软件工程领域广为人知的设计模式,这种模式抽象创建具体对象的过程,由于javascript无法创建类,开发人员发明了一种函数,用以封装接口以创建特定对象

1 min read
By myfreax
javascript高级编程-工厂模式

工厂模式是软件工程领域广为人知的设计模式,这种模式抽象创建具体对象的过程,由于javascript无法创建类,开发人员发明了一种函数,用以封装接口以创建特定对象

 function createPerson(name,age,job){
    var o = new Object();
    o,name = name;
    o.age = age;
    o.job = job;
    o.sayName = function () {
        console.info(this.name);
    };
    return o;
}

persobn1 = createPerson('freax',18,'javascript');
persobn2 = createPerson('huang',19,'javascript');

问题

函数createPerson()能够根据接受的参数创建对象,每次都返回i相似的对象,都包含三个属性,这种模式虽然解决创建相似对象的问题