//js的工厂模式
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;
}
//js的构造函数模式
function person(name,age,job){
this.name = name;
this.age = age;
this.sayName = function(){alert(this.name);};
}
/*
区别:
1.没有显示的创建对象
2.直接将属性和方法赋给了this对象
3.没有return语句
*/
//创建自定义的构造函数意味着将来可以将它的实例标识为一种特定的类型;而这正是构造函数模式胜过工厂模式的地方。