Својства-аксессори у ООП у JavaScript

Постоје два типа својстава објекта.

Први тип су својства-подаци (data properties). Већ знамо како да радимо са њима. Сва својства која смо користили до сада су била својства-подаци.

Други тип својстава још нисмо разматрали. То су својства-аксессори (accessor properties). По својој суштини то су функције, које се користе за додељивање и добијање вредности, али у спољном коду изгледају као обична својства објекта.

Својства-аксессори се креирају помоћу кључних речи get и set написаних приликом декларације метода:

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

Као резултат такве декларације наша класа ће поседовати својство name. Притом, при покушају читања овог својства ће се позвати метод, декларисан преко get:

javascriptlet name = user.name;

При покушају уписа ће се позвати метод, декларисан преко set:

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

Дата је следећа класа:

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

Направите објекат ове класе и покушајте да уписете и прочитате податке из својства name.