Gettery właściwości w OOP w JavaScript
Załóżmy, że mamy następującą klasę z prywatnymi właściwościami:
class User {
#name;
#surn;
constructor(name, surn) {
this.#name = name;
this.#surn = surn;
}
}
Jak widzisz, te właściwości są ustawiane raz podczas tworzenia obiektu. Obecnie jednak nie można odczytać tych właściwości, ponieważ są prywatne i nie ma odpowiednich metod do tego.
Stwórzmy dla naszych właściwości specjalne
metody umożliwiające odczyt tych właściwości.
Takie metody (nazywane getterami) powinny
zaczynać się od słowa get, a następnie powinna
iść nazwa odczytywanej właściwości.
Stwórzmy gettery naszych właściwości:
class User {
#name;
#surn;
constructor(name, surn) {
this.#name = name;
this.#surn = surn;
}
getName() {
return this.#name;
}
getSurn() {
return this.#surn;
}
}
Sprawdźmy ich działanie. Stwórzmy obiekt, przekazując parametry dane użytkownika:
let user = new User('john', 'smit');
Odczytajmy te dane, korzystając z getterów:
console.log(user.getName());
console.log(user.getSurn());
W klasie Employee zrób
trzy prywatne właściwości: imię, wynagrodzenie
i wiek.
Przekaż parametrem konstruktora wartości tych właściwości.
Zrób gettery, wypisujące wartości każdej z naszych właściwości.