Reťazenie metód v OOP v JavaScripte

Môžeme zaariadiť, aby bolo možné metódy volať jednu za druhou v reťazci. Na to musí každá takáto metóda vrátiť this. Skúsme to. Pridajme zodpovedajúci kód do setterov našej triedy:

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;
  }
}

Teraz môžeme naše settery volať jeden za druhým, v reťazci. Vyskúšajme to. Vytvorme objekt našej triedy:

javascriptlet user = new User;

Zavolajme naše settery v reťazci:

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

Skontrolujme, či sa hodnoty vlastností zmenili:

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

Zaistite, aby bolo možné settery triedy Employee volať v reťazci.