Lastnosti dostopnikov v OOP v JavaScriptu

Obstajata dve vrsti lastnosti objekta.

Prva vrsta so lastnosti podatkov (data properties). Že vemo, kako delati z njimi. Vse lastnosti, ki smo jih uporabljali do sedaj, so bile lastnosti podatkov.

Druge vrste lastnosti še nismo obravnavali. To so lastnosti dostopniki (accessor properties). V bistvu so to funkcije, ki se uporabljajo za dodelitev in pridobivanje vrednosti, toda v zunanji kodi izgledajo kot običajne lastnosti objekta.

Lastnosti dostopniki se ustvarijo s ključnimi besedami get in set, napisanimi pri deklaraciji metod:

javascriptclass User {
  get name() {
  
  }
  set name(name) {
  
  }
}

Kot rezultat takšne deklaracije bo naš razred posedoval lastnost name. Pri tem bo ob poskusu branja te lastnosti poklicana metoda, deklarirana preko get:

javascriptlet name = user.name;

Ob poskusu pisanja bo poklicana metoda, deklarirana preko set:

javascriptuser.name = 'john';
Задание 1

Podan je naslednji razred:

javascriptclass Employee {
  get name() {
    console.log('get');
  }
  set name(name) {
    console.log('set');
  }
}

Ustvarite objekt tega razreda in poskusite zapisati in prebrati podatke iz lastnosti name.