Getters pentru proprietăți în OOP în JavaScript
Să presupunem că avem următoarea clasă cu proprietăți private:
class User {
#name;
#surn;
constructor(name, surn) {
this.#name = name;
this.#surn = surn;
}
}
După cum vedeți, aceste proprietăți sunt setate o dată la crearea obiectului. Însă acum, aceste proprietăți nu pot fi citite, deoarece sunt private și nu există metode corespunzătoare pentru aceasta.
Să creăm pentru proprietățile noastre metode speciale
care permit citirea acestor proprietăți.
Astfel de metode (numite getters) trebuie
să înceapă cu cuvântul get, urmat de
numele proprietății care se citește.
Să creăm getters pentru proprietățile noastre:
class User {
#name;
#surn;
constructor(name, surn) {
this.#name = name;
this.#surn = surn;
}
getName() {
return this.#name;
}
getSurn() {
return this.#surn;
}
}
Să verificăm funcționarea lor. Să creăm un obiect, transmitând ca parametru datele utilizatorului:
let user = new User('john', 'smit');
Să citim aceste date, folosind getters:
console.log(user.getName());
console.log(user.getSurn());
În clasa Employee creați
trei proprietăți private: nume, salariu
și vârstă.
Transmiteți prin parametrii constructorului valorile acestor proprietăți.
Creați getters care afișează valorile fiecăreia dintre proprietățile noastre.