Гетери на имитирани својства во ООП во JavaScript
Со помош на пристапници може да се креираат имитирани својства, кои всушност не постојат во објектот. Ајде да погледнеме на пример. Нека имаме класа со две јавни својства:
javascriptclass User {
constructor(name, surn) {
this.name = name;
this.surn = surn;
}
}
Ајде да направиме трето својство, кое ќе ги содржи името и презимето. Да создадеме за ова својство-пристапник:
javascriptclass User {
constructor(name, surn) {
this.name = name;
this.surn = surn;
}
get full() {
return this.name + ' ' + this.surn;
}
}
Да го провериме. Ќе создадеме објект од класата, пренесувајќи ги име и презиме како параметри:
javascriptlet user = new User('john', 'smit');
Да ги испечатиме вредностите на јавните својства:
javascriptconsole.log(user.name); // 'john'
console.log(user.surn); // 'smit'
А сега да ја испечатиме вредноста на нашето имитирано својство:
javascriptconsole.log(user.full); // 'john smit'