Гетъри на свойства в ООП в JavaScript

Нека имаме следния клас с частни свойства:

javascriptclass User {
  #name;
  #surn;
  
  constructor(name, surn) {
    this.#name = name;
    this.#surn = surn;
  }
}

Както виждате, тези свойства се задават веднъж при създаване на обекта. В момента обаче тези свойства не могат да бъдат прочетени, тъй като са частни и няма съответни методи за това.

Нека направим за нашите свойства специални методи, позволяващи четенето на тези свойства. Такива методи (наричани гетъри) трябва да започват със думата get, след което трябва да има име на четеното свойство.

Нека направим гетъри за нашите свойства:

javascriptclass User {
  #name;
  #surn;
  
  constructor(name, surn) {
    this.#name = name;
    this.#surn = surn;
  }
  
  getName() {
    return this.#name;
  }
  
  getSurn() {
    return this.#surn;
  }
}

Нека проверим тяхната работа. Създайте обект, като параметрите подайте данните на потребителя:

javascriptlet user = new User('john', 'smit');

Прочетете тези данни, като използвате гетърите:

javascriptconsole.log(user.getName());
console.log(user.getSurn());
Задание 1

В класа Employee направете три частни свойства: име, заплата и възраст.

Задание 2

Подайте параметри на конструктора стойностите на тези свойства.

Задание 3

Направете гетъри, извеждащи стойностите на всяко от нашите свойства.