Getters pentru accesorii în OOP în JavaScript
Să analizăm mai în detaliu aplicarea getters pentru proprietățile-accesor. Să presupunem că avem următoarea clasă cu o proprietate privată:
class User {
#name;
constructor(name) {
this.#name = name;
}
}
Să creăm în această clasă
o proprietate publică name,
care poate fi citită,
dar nu poate fi scrisă:
class User {
#name;
constructor(name) {
this.#name = name;
}
get name() {
return this.#name;
}
}
Să verificăm funcționalitatea. Să creăm un obiect al clasei noastre, transmitându-i ca parametru valoarea numelui:
let user = new User('john');
Și acum să citim numele prin proprietatea publică:
let name = user.name;
console.log(name);
În schimb, încercarea de a scrie numele va duce la o eroare, așa cum ne-am dorit:
user.name = 'eric';
Implementați getters pentru accesorii pentru
proprietățile clasei Employee.