⊗jsOpBsGSA 18 of 60 menu

Výhody setterov a getterov v OOP v JavaScripte

V predchádzajúcej lekcii sme vytvorili pre každú vlastnosť getter a setter. Môže vzniknúť otázka, na čo sú takéto komplikácie potrebné, veď v podstate rovnakého efektu sa dá dosiahnuť, ak urobíme vlastnosti verejnými, nie súkromnými.

Vec sa má tak, že gettre a setre majú výhodu: pred prístupom k vlastnosti je možné vykonať niektoré kontroly. Napríklad, v našom prípade pri zápise mena a priezviska môžeme skontrolovať, že nová hodnota nie je prázdny reťazec:

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

Poďme otestovať, ako to funguje. Najprv vytvoríme objekt triedy:

let user = new User;

Teraz skúsme zapísať korektnú hodnotu:

user.setName('john');

A teraz skúsme zapísať nekorektnú:

user.setName(''); // chyba

V triede Employee v setteri veku vykonajte kontrolu, že vek musí byť od 0 do 120.

V triede Employee v getteri platu urobte tak, aby pri čítaní platu na koniec jeho hodnoty bol pridaný znak dolára.

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
Používame cookies na fungovanie stránky, analýzu a personalizáciu. Spracúvanie údajov prebieha v súlade s Politikou ochrany osobných údajov.
prijať všetky nastaviť odmietnuť