Accessorien setterit OOP:ssa JavaScriptissä

Tehdään nyt getterin lisäksi myös accessorin setteri:

javascriptclass User {
  #name;
  
  get name() {
    return this.#name;
  }
  
  set name(name) {
    this.#name = name;
  }
}

Lisätään nyt tarkistus setteriin:

javascriptclass User {
  #name;
  
  set name(name) {
    if (name.length > 0) {
      this.#name = name;
    } else {
      throw new Error('name is incorrect');
    }
  }
  get name() {
    return this.#name;
  }
}

Luodaan luokan olio:

javascriptlet user = new User;

Kirjoitetaan data ominaisuuteemme:

javascriptuser.name = 'john';

Yritetään kirjoittaa epäkelpo merkkijono ja saamme virheen:

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

Toteuta setterit luokan Employee ominaisuuksille.

Задание 2

Lisää tarkistukset accessorien settereihin luokassa Employee.