Eigenskapsgetters in OOP in JavaScript
Gestel ons het die volgende klas met private eienskappe:
class User {
#name;
#surn;
constructor(name, surn) {
this.#name = name;
this.#surn = surn;
}
}
Soos jy kan sien, word hierdie eienskappe een keer tydens die skepping van die objek gestel. Op die oomblik is dit eger onmoontlik om hierdie eienskappe te lees, aangesien hulle privaat is en daar geen gepaste metodes daarvoor is nie.
Laat ons spesiale metodes vir ons eienskappe skep,
wat die lees van hierdie eienskappe moontlik maak.
Sulke metodes (hulle word getters genoem) moet
begin met die woord get, gevolg deur
die naam van die eienskap wat gelees word.
Kom ons maak getters vir ons eienskappe:
class User {
#name;
#surn;
constructor(name, surn) {
this.#name = name;
this.#surn = surn;
}
getName() {
return this.#name;
}
getSurn() {
return this.#surn;
}
}
Kom ons toets hulle werking. Laat ons 'n objek skep en die gebruikersdata as parameters deurstuur:
let user = new User('john', 'smit');
Kom ons lees hierdie data deur van die getters gebruik te maak:
console.log(user.getName());
console.log(user.getSurn());
In die klas Employee, maak
drie private eienskappe: naam, salaris
en ouderdom.
Stuur die waardes van hierdie eienskappe as parameters aan die konstruktor.
Maak getters wat die waardes van elk van ons eienskappe uitvoer.