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