Łańcuchy metod w OOP w JavaScript

Można sprawić, żeby metody można było wywoływać jedna po drugiej w łańcuchu. W tym celu każda taka metoda musi zwracać this. Spróbujmy. Dodajmy odpowiedni kod do setterów naszej klasy:

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 nasze settery można wywoływać jeden po drugim, w łańcuchu. Sprawdźmy. Stwórzmy obiekt naszej klasy:

javascriptlet user = new User;

Wywołajmy nasze settery w łańcuchu:

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

Sprawdźmy, czy wartości właściwości się zmieniły:

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

Spraw, aby settery klasy Employee można było wywoływać w łańcuchu.