创建对象的模式
工厂模式
function createPerson(name, age, job){
    var o = new Object();
    o.name = name;
    o.age = age;
    o.job = job;
    o.sayName = function(){
        alert(this.name);
    }
    return o;
}

var person1 = createPerson("Nicholas", 29, "Software Engineer");
var person2 = createPerson("Greg", 27, "Doctor");                    
                

考虑到 JavaScript 中无法创建类,用特定的函数来封装以特定接口创建对象的细节。

工厂模式的优点:解决了创建多个相似对象的问题。

工厂模式的缺点:没有解决对象识别的问题(即知道一个对象的类型)。