Īpašību akcesori OOP JavaScript
Ir divu veidu objekta īpašības.
Pirmais veids ir datu īpašības (data properties). Mēs jau zinām, kā ar tām strādāt. Visas īpašības, ko esam izmantojuši līdz šim brīdim, bija datu īpašības.
Otro īpašību veidu mēs vēl neesam apskatījuši. Tās ir īpašību akcesori (accessor properties). Pēc savas būtības tās ir funkcijas, kuras tiek izmantotas vērtības piešķiršanai un iegūšanai, bet ārējā kodā tās izskatās kā parastas objekta īpašības.
Īpašību akcesori tiek izveidoti, izmantojot
atslēgvārdus get un set, kas uzrakstīti
deklarējot metodes:
javascriptclass User {
get name() {
}
set name(name) {
}
}
Šādas deklarācijas rezultātā
mūsu klasei būs īpašība
name. Šajā gadījumā, mēģinot nolasīt
šo īpašību, tiks izsaukta metode,
deklarēta ar get:
javascriptlet name = user.name;
Mēģinot veikt ierakstīšanu, tiks izsaukta metode,
deklarēta ar set:
javascriptuser.name = 'john';
Dota šāda klase:
javascriptclass Employee {
get name() {
console.log('get');
}
set name(name) {
console.log('set');
}
}
Izveidojiet šīs klases objektu
un pamēģiniet ierakstīt un nolasīt
datus no īpašības name.