Lančanje metoda u OOP u JavaScriptu

Moguće je postići da se metode mogu pozivati jedna za drugom u lancu. Za to svaka takva metoda treba da vrati this. Hajde da probamo. Dodajmo odgovarajući kod u setere naše klase:

javascriptclass User {
  #name;
  #surn;

  setName(name) {
    this.#name = name;
    return this;
  }
  setSurn(surn) {
    this.#surn = surn;
    return this;
  }
  
  getName() {
    return this.#name;
  }
  getSurn() {
    return this.#surn;
  }
}

Sada se naši seteri mogu pozivati jedan za drugim, u lancu. Hajde da proverimo. Kreirajmo objekat naše klase:

javascriptlet user = new User;

Pozovimo naše setere lancem:

javascriptuser.setName('john').setSurn('smit');

Proverimo da li su se vrednosti svojstava promenile:

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

Uredite tako da setere klase Employee mogu da se pozivaju lancem.