Metodekæder i OOP i JavaScript

Det er muligt at gøre det sådan, at metoder kan kaldes efter hinanden i en kæde. For at gøre dette skal hver sådan metode returnere this. Lad os prøve. Vi tilføjer den relevante kode til vores klassers setters:

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

Nu kan vores setters kaldes efter hinanden i en kæde. Lad os tjekke. Vi opretter et objekt af vores klasse:

javascriptlet user = new User;

Lad os kalde vores setters i kæde:

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

Lad os tjekke, at egenskabernes værdier er blevet ændret:

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

Gør sådan, at setters i klassen Employee kan kaldes i kæde.