⊗jsOpBsGSA 18 of 60 menu

Voordelen van setters en getters in OOP in JavaScript

In de vorige les hebben we voor elke eigenschap een getter en setter gemaakt. Men zou zich kunnen afvragen waarom zulke complexiteit nodig is, want in feite kan hetzelfde effect worden bereikt door de eigenschappen publiek te maken in plaats van privé.

Het punt is dat getters en setters een voordeel hebben: voor toegang tot de eigenschap kunnen er enkele controles worden uitgevoerd. In ons geval kunnen we bijvoorbeeld bij het opslaan van de voor- en achternaam controleren of de nieuwe waarde geen lege string is:

class User { #name; #surn; setName(name) { if (name.length > 0) { this.#name = name; } else { throw new Error('name is incorrect'); } } setSurn(surn) { if (surn.length > 0) { this.#surn = surn; } else { throw new Error('surn is incorrect'); } } getName() { return this.#name; } getSurn() { return this.#surn; } }

Laten we testen hoe dit werkt. Laten we eerst een object van de klasse aanmaken:

let user = new User;

Laten we nu proberen een correcte waarde op te slaan:

user.setName('john');

En laten we nu proberen een incorrecte op te slaan:

user.setName(''); // fout

Maak in de klasse Employee in de setter voor leeftijd een controle dat de leeftijd tussen 0 en 120 moet liggen.

Zorg in de klasse Employee in de getter voor salaris ervoor dat bij het uitlezen van het salaris aan het einde ervan een dollarteken wordt toegevoegd.

Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren