Getterek és accessorok az OOP-ban JavaScriptben
Nézzük meg részletesebben a getter accessor tulajdonságok alkalmazását. Tegyük fel, hogy van egy osztályunk privát tulajdonsággal:
class User {
#name;
constructor(name) {
this.#name = name;
}
}
Készítsünk ebben az osztályban
egy name publikus tulajdonságot,
amely olvasható,
de nem írható:
class User {
#name;
constructor(name) {
this.#name = name;
}
get name() {
return this.#name;
}
}
Ellenőrizzük a működést. Hozzunk létre egy objektumot osztályunkból, átadva neki paraméterként a név értékét:
let user = new User('john');
És most olvassuk ki a nevet a publikus tulajdonságon keresztül:
let name = user.name;
console.log(name);
A név megváltoztatásának kísérlete viszont hibához vezet, ahogy azt el is vártuk:
user.name = 'eric';
Valósítsa meg az accessor gettereket a
Employee osztály tulajdonságaihoz.