Wpis z mikrobloga

#javascript
B = {}
A = {}

A.prototype = {
this.show: function ()....
}

B.prototype = {
this.show: function ()....
}

B.prototype = Object.create(A.prototype);
A.prototype.constructor = A;
B.prototype.constructor = B;

var obj = new B();

obj.show()

hej, prośba do zaawansowanych programistów - mój interpreter javascript nie jest przeglądarkowy - stary i nie ma połowy funkcji.

jeśli dobrze rozumiem funkcja show wywołana z obiektu obj - powinna odpalić funkcje najpierw wewnątrz obiektu (no ale jej nie znajduje), potem w prototype B, a następnie iść do prototypu A - dobrze rozumiem?

u mnie od razu odpala sie z prototypu A :( co źle robie?

chce mieć np. 5 funkcji w A.prototype a w B.prototype mieć 2 funkcje z pod tymi samymi nazwami.
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Primek_1980: w momencie kiedy robisz B.prototype = Object.create(A.prototype) nadpisujesz wcześniejszy B.prototype w którym dodałeś inną metodę show - zamień kolejność i będzie śmigać
  • Odpowiedz
@Primek_1980: inna sprawa że nie wiem co to za interpreter masz, ale ten kod nie jest poprawny. Tu napisałeś że A i B to obiekty, a żeby to zadziałało muszą być funkcjami. Tak samo ten zapis
A.prototype = {
this.show: function ()....
}
też nie jest poprawny
  • Odpowiedz