, чтобы сохранить свой прогресс
Наследование поведения от супертипа
В предыдущем вызове вы создали supertype
под названием Animal
который определял поведение, разделяемое всеми животными:
функция Animal () {}Эта и следующая задача будет посвящена тому, как повторно использовать методы
Animal.prototype.eat = function () {
console.log («nom nom nom»);
};
Animal's
внутри Bird
and Dog
не определяя их снова. Он использует метод, называемый inheritance
. Эта задача охватывает первый шаг: создайте экземпляр supertype
(или родителя). Вы уже знаете один способ создания экземпляра Animal
с помощью new
оператора: let animal = new Animal ();Существуют некоторые недостатки при использовании этого синтаксиса для
inheritance
, которые слишком сложны для этой задачи. Вместо этого, это альтернативный подход без этих недостатков: let animal = Object.create (Animal.prototype);
Object.create(obj)
создает новый объект и устанавливает obj
как prototype
нового объекта. Напомним, что prototype
подобен «рецепту» для создания объекта. Установив prototype
от animal
быть Animal's
prototype
, вы фактически давая animal
экземпляру же «рецепт» , как и любой другой экземпляр Animal
. animal.eat (); // печатает "nom nom nom"
животный экземпляр животных; // => true
Используйте Object.create
чтобы создать два экземпляра Animal
именем duck
и beagle
.
/**
* Your test output will go here.
*/