, чтобы сохранить свой прогресс
Использование свойств прототипа для уменьшения повторяющегося кода
Поскольку numLegs
, вероятно, будет иметь одинаковое значение для всех экземпляров Bird
, у вас по существу есть дублируемая переменная numLegs
внутри каждого экземпляра Bird
. Это может быть не проблема, когда есть только два экземпляра, но представьте, есть ли миллионы экземпляров. Это было бы много дублированных переменных. Лучше всего использовать prototype
Bird's
. prototype
- это объект, который используется для ВСЕХ экземпляров Bird
. Вот как добавить numLegs
в Bird prototype
:
Bird.prototype.numLegs = 2;Теперь все экземпляры
Bird
имеют свойство numLegs
. console.log (duck.numLegs); // печатает 2Поскольку все экземпляры автоматически имеют свойства на
console.log (canary.numLegs); // печатает 2
prototype
, подумайте о prototype
как о «рецепте» для создания объектов. Обратите внимание, что prototype
duck
и canary
является частью конструктора Bird
как Bird.prototype
. Почти каждый объект в JavaScript имеет свойство prototype
которое является частью созданной им функции-конструктора.Добавьте свойство numLegs
в prototype
Dog
/**
* Your test output will go here.
*/