Egenskabs getters i OOP i JavaScript
Lad os sige, at vi har følgende klasse med private egenskaber:
class User {
#name;
#surn;
constructor(name, surn) {
this.#name = name;
this.#surn = surn;
}
}
Som du kan se, indstilles disse egenskaber én gang når objektet oprettes. I øjeblikket er det dog umuligt at læse disse egenskaber, fordi de er private, og der er ingen tilsvarende metoder til dette.
Lad os lave specielle metoder for vores egenskaber,
der gør det muligt at læse disse egenskaber.
Sådanne metoder (som kaldes getters) skal
starte med ordet get, og derefter skal
der komme navnet på den læste egenskab.
Lad os lave getters for vores egenskaber:
class User {
#name;
#surn;
constructor(name, surn) {
this.#name = name;
this.#surn = surn;
}
getName() {
return this.#name;
}
getSurn() {
return this.#surn;
}
}
Lad os teste deres funktion. Lad os oprette et objekt og sende brugerdata som parameter:
let user = new User('john', 'smit');
Lad os læse disse data ved at bruge getters:
console.log(user.getName());
console.log(user.getSurn());
I klassen Employee skal du lave
tre private egenskaber: navn, løn
og alder.
Overfør værdierne for disse egenskaber via konstruktørens parameter.
Lav getters, der viser værdierne for hver af vores egenskaber.