Archief - JS: "method overriding" (gelijk in Java)

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Emerxill

Legacy Member
Hello,

Ik heb in een aantal jsp's een .js toevoegd met
Code:
<script src="/JReportWeb/js/general.js" language="JavaScript" type="text/javascript"></script>

Daarin steken een heel aantal functies die meermaals gebruikt worden over de verschillende jsp's.
Nu is er 1 functie, bv de een functie "setRepIdAndRepCode()", die ik wil "overriden", maw het scriptje moet iets extra doen.
Dus maak ik een gespecialiseerde functie "setRepIdAndRepCode" rechtstreeks in mijn jsp aan.

Nu blijkt dit te werken, de functie in mijn jsp wordt gekozen boven de gelijknamige functie die in "general.js" steekt.

Mijn vraag is: is het veilig om ervan uit te gaan dat deze functie altijd gekozen wordt boven die in mijn script-file?
Of zijn er situaties dat het kan zijn dat de functie in "general.js" gekozen kan worden boven de functie rechtstreeks in mijn jsp?

Lashknife

Legacy Member
euh, zaagt een browser normaal niet met een script error dat er reeds een functie bestaat met dezelfde naam?

Emerxill

Legacy Member
Nope, in IE en FF schijnt de browser er geen problemen met te hebben...

Smoerf

Legacy Member
hm, method overriden is naar mijn inziens iets puur Object Oriented. Wat jij doet is een bestaande functie overschrijven door later diezelfde functienaam nog eens te gebruiken. Proper is dit niet echt maar als het werkt...

dJeez

Legacy Member
Emerxill zei:
Mijn vraag is: is het veilig om ervan uit te gaan dat deze functie altijd gekozen wordt boven die in mijn script-file?
Neen.

Emerxill zei:
Of zijn er situaties dat het kan zijn dat de functie in "general.js" gekozen kan worden boven de functie rechtstreeks in mijn jsp?
De code kan gewoon breken als de achterliggende browser en/of Javascript engines worden gewijzigd. En dat is uiteraard iets dat je niet zelf in de hand hebt.

De correcte manier om met objecten te werken in Javascript (inclusief method overriding) kan je terugvinden op verschillende sites, oa. http://www.howtocreate.co.uk/tutorials/javascript/objects.
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan