⊗jsOpBsGSA 18 of 60 menu

Zalety setterów i getterów w OOP w JavaScript

W poprzedniej lekcji zrobiliśmy dla każdej właściwości getter i setter. Może pojawić się pytanie, po co potrzebne są takie skomplikowania, przecież faktycznie tego samego efektu można osiągnąć, jeśli zrobić właściwości publicznymi, a nie prywatnymi.

Chodzi o to, że gettery i settery mają zaletę: przed odwołaniem się do właściwości można wykonać pewne sprawdzenia. Na przykład, w naszym przypadku przy zapisie imienia i nazwiska możemy sprawdzić, że nowa wartość nie jest pustym ciągiem znaków:

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

Sprawdźmy, jak to działa. Na początek stwórzmy obiekt klasy:

let user = new User;

Teraz spróbujmy zapisać prawidłową wartość:

user.setName('john');

A teraz spróbujmy zapisać nieprawidłową:

user.setName(''); // błąd

W klasie Employee w setterze wieku zrób sprawdzenie, że wiek powinien być od 0 do 120.

W klasie Employee w getterze wypłaty zrób tak, aby przy odczycie wypłaty na koniec jej wartości był dodawany znak dolara.

Polski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wykorzystujemy pliki cookie do działania strony, analizy i personalizacji. Przetwarzanie danych odbywa się zgodnie z Polityką prywatności.
zaakceptuj wszystkie dostosuj odrzuć