目前我们已经学习了两种方式: 1)new Object方式; 2)字面量创建的方式;
这种方式有一个很大的弊端:创建同样的对象时,需要编写重复的代码。因此产生了两种方案:
1. 工厂模式
// 工厂模式: 工厂函数
function createPerson(name, age, height, address) {
var p = {}
p.name = name
p.age = age
p.height = height;
p.address = address
p.eating = function() {
console.log(this.name + "在吃东西~")
}
p.running = function() {
console.log(this.name + "在跑步~")
}
return p
}
工厂方法创建对象有一个比较大的问题:我们在打印对象时,对象的类型都是Object类型
但是从某些角度来说,这些对象应该有一个他们共同的类型;
下面我们来看一下另外一种模式:构造函数的方式;