2
此代码仅为示例。我试图理解Object.create。Object.create并为每个实例共享方法而不会丢失内存
function Animal {}
var cat = new Animal();
我想创建100个动物,并添加到构造函数的一些方法,例如saySomething()。所以,我把它添加到原型,我知道我的方法将被创建只有一次,每个实例访问它:
Animal.prototype.saySomething = function(voice) {
console.log(voice)
}
但是,当我创建这样的对象:
var Animal = {
saySomething: function(voice) {
console.log(voice)
}
}
var cat = Object.create(Animal);
var dog = Object.create(Animal);
...
当我创建这样的对象,saySomething方法分别为每个实例创建? 如何将这种方法添加到Animal对象中,方法与之前相同? 我很困惑:/ 请帮忙。
好的,谢谢:)真棒:) – Agata