Witam,
Uczę się obiektówki w JS i mam stworzone dwa konstruktory:
function Footballer(first, surname, club, strongFoot){
this.first=first;
this.surname=surname;
this.club=club;
this.foot=strongFoot;
}
function Goalkeeper(first, surname, club, defStyle){
this.first=first;
this.surname=surname;
this.club=club;
this.defStyle=defStyle;
}
Jednocześnie dla metod dokonałem zmian w prototypie konstruktora Footballer:
//change club
Footballer.prototype.changeClub = function(newClub){
return `${this.first} ${this.surname} moves to ${this.club=newClub}.`;
}
//get some informations about the player
Footballer.prototype.informations = function(){
return `${this.first} ${this.surname}, plays in ${this.club}.`;
}
Dla obiektów stworzonych przez oba konstruktory chciałbym mieć dostęp do powyższego prototypu, ale przy tworzeniu obiektu z użyciem new Goalkeeper() ani Object.create(), ani Object.assign() nie działa tak, jak bym chciał. Widać ponadto, że oba konstruktory zawierają powtarzające się właściwości, a zapis obydwu konstruktorów można skrócić, stąd pytanie - które z narzędzi JavaScriptu pozwala na przypisanie dwóm konstruktorom tego samego prototypu? Lub chociaż pobrać prototyp jednego konstruktora (Footballer) i przypisać go do drugiego (Goalkeeper)?
Z góry dziękuję za pomoc.