⊗jsOpBsGSA 18 of 60 menu

Prednosti seterjev in geterjev v OOP v JavaScript

V prejšnji lekciji smo naredili za vsako lastnost geter in seter. Lahko se pojavi vprašanje, zakaj so potrebne takšne zapletenosti, saj dejansko enakega učinka lahko dosežemo, če naredimo lastnosti javne in ne zasebne.

Bistvo je v tem, da imajo geterji in seterji prednost: pred dostopom do lastnosti lahko izvedemo nekatere preveritve. Na primer, v našem primeru lahko pri zapisovanju imena in priimka preverimo, da nova vrednost ni prazen niz:

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; } }

Preverimo, kako to deluje. Najprej ustvarimo objekt razreda:

let user = new User;

Zdaj poskusimo zapisati korektno vrednost:

user.setName('john');

Zdaj pa poskusimo zapisati nekorektno:

user.setName(''); // napaka

V razredu Employee v seterju starosti naredite preverjanje, da mora biti starost od 0 do 120.

V razredu Employee v geterju plače naredite tako, da se pri branju plače na konec njene vrednosti doda znak dolarja.

Slovenščina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Za delovanje spletnega mesta, analitiko in personalizacijo uporabljamo piškotke. Obdelava podatkov poteka v skladu s Politiko zasebnosti.
sprejmi vse nastavi zavrni