Toon posts:

[JS] OO inherited uitvoeren

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallo,

ik ben een beetje aan het spelen met OO in javascript.

Ik kwam deze link tegen op het forum:
http://www.xs4all.nl/~peterned/got/oojstuto.html

Alleen nu wil ik iets wat ik daar niet tegen kom en wat ik tot nu toe ook nog niet heb kunnen vinden.
Ik heb twee klasses MijnKlasse en MijnKlasseExtra, deze hebben allebij een methode doIets().

Nu doen beide klasses hetzelfde alleen MijnKlasseExtra doet nog iets meer, maar ook hetzelfde als MijnKlasse.
In Delphi zette je in de methode Inherited; en dan voerde die alles uit van zijn "parent" methode. Is er ook zoiets in JS?

In de tutorial doen ze het zo in de constructor:
Monster.apply(this, arguments);

Ik bakte erzelf iets van:
MijnKlasseExtra.apply(this, arguments);
MijnKlasseExtra.apply(doIets, arguments);
MijnKlasseExtra.apply(this.doIets, arguments);

Maar ze hebben allemaal geen resultaat.
Kan iemand mij hiermee helpen?

  • Clay
  • Registratie: Oktober 1999
  • Laatst online: 25-02 11:17

Clay

cookie erbij?

hey :P da's mijn tuto ;) Hij is trouwens onlangs vernieuwd, en verplaatst; http://www.xs4all.nl/~peterned/tutorial/ Dat moet ik idd nog ff ombouwen dat je daar ook uitkomt (en ook voor de W&G faq, waarvandaan er naar gelinkt wordt)

Als MijnKlasseExtra inherit van MijnKlasse, dan kan je in de extra de doIets() van z'n parent aanroepen met:

code:
1
2
// in MijnKlasseExtra.doIets
MijnKlasse.doIets.apply(this, arguments);


Je wil de doIets van de parent hebben, en in de scope van ...extra uitvoeren. de functie referentie is dus MijnKlasse.doIets. De scope die je hebben moet blijft "this", en arguments blijft ook hetzelfde. zo zou het moeten werken dus.

Instagram | Flickr | "Let my music become battle cries" - Frédéric Chopin


Verwijderd

Topicstarter
Hey BEDANKT!!!

moet zeggen, erg goede TUT!

Update:

Alleen jammer dat ik nog een foutmelding krijg:

Error: MijnKlasse.doIets has no properties

[ Voor 56% gewijzigd door Verwijderd op 02-05-2004 14:49 ]


  • Clay
  • Registratie: Oktober 1999
  • Laatst online: 25-02 11:17

Clay

cookie erbij?

hmz, dan is het MijnKlasse.prototype.doIets.apply... is ook logischer ;) sorry!

Instagram | Flickr | "Let my music become battle cries" - Frédéric Chopin