我正在阅读关于 JavaScript 中继承的教程,并且有以下声明:
对于从 Animal 类继承的 Rabbit 类的对象,我们需要:
- 定义动物
- 定义兔子
从动物继承兔子:
Rabbit.prototype = new Animal()
他们说这种方法的缺点是需要创建一个冗余对象。我不明白为什么我需要创建那个冗余对象?我尝试了以下方法,它在没有创建冗余对象的情况下工作:
function Animal() {};
function Rabbit() {};
Rabbit.prototype = Animal.prototype
Animal.prototype.go = function() {alert("I'm inherited method"};
var r = new Rabbit();
r.go();
我在这里想念什么?