工厂模式不是制造具体的事例对象的,而是制造构造函数的。
//实例化不同的人
function Factory(name, age, job) {
var obj = new Object();
obj.name = name;
obj.age = age;
obj.job = job;
obj.sleep = function () {
console.log(this.name);
}
return obj;
}
var s1 = Factory('小黑', 18, '学生');
var s2 = Factory('小红', 18, '学生');
var s3 = Factory('小乐', 18, '学生');
console.log(s1, s2, s3);
当需要有好多构造函数,且构造函数之间有共同点,可以用工厂模式来管理这些有联系的构造函数.
当需要添加同一子类时,可以在工厂中直接添加。