Својства-аксесори во ООП во JavaScript
Постојат два типа на својства на објектот.
Првиот тип се својства-податоци (data properties). Ние веќе знаеме како да работиме со нив. Сите својства, кои ги користевме до сегашниот момент, беа својства-податоци.
Вториот тип на својства сè уште не сме ги разгледале. Тоа се својства-аксесори (accessor properties). Во суштина, тоа се функции, кои се користат за доделување и добивање на вредност, но во надворешниот код тие изгледаат како обични својства на објектот.
Својствата-аксесори се создаваат со
клучни зборови get и set напишани
при декларирање на методите:
class User {
get name() {
}
set name(name) {
}
}
Како резултат на таквото декларирање
нашата класа ќе поседува својство
name. Притоа, при обид за читање
на ова својство ќе се повика методот,
деклариран преку get:
let name = user.name;
При обид за запишување ќе се повика методот,
деклариран преку set:
user.name = 'john';
Дадена е следнава класа:
class Employee {
get name() {
console.log('get');
}
set name(name) {
console.log('set');
}
}
Создадете објект од оваа класа
и обидете се да запишете и прочитате
податоци од својството name.