Menu
Coddy logo textTech

Wzorzec łańcuchowego wywoływania metod

Część sekcji Programowanie obiektowe ścieżki JavaScript w Coddy. Lekcja 16 z 56.

Łańcuchowe wywoływanie metod to wzorzec programowania, który pozwala wywoływać wiele metod na tym samym obiekcie w jednym instrukcji. Każda metoda zwraca sam obiekt (this), dzięki czemu możesz wywołać kolejną metodę w tym samym wierszu.

Utwórz prosty obiekt licznika:

const counter = {
  count: 0,
  
  increment() {
    this.count++;
    return this;
  },
  
  decrement() {
    this.count--;
    return this;
  },
  
  getValue() {
    return this.count;
  }
};

Teraz możesz łączyć metody:

// Połącz kilka operacji w łańcuch
counter.increment().increment().decrement();

// Licznik ma teraz wartość 1
console.log(counter.getValue()); // Wynik: 1

Kluczem do łączenia metod w łańcuch jest zwracanie this z każdej metody, którą chcesz móc łączyć w łańcuch.

challenge icon

Wyzwanie

Otrzymujesz obiekt kalkulatora, który ma już metody add() i subtract(). Twoim zadaniem jest dodać metody multiply i divide, które zwracają this, aby umożliwić łańcuchowe wywoływanie metod.

Spróbuj swoich sił

import { calculator } from './calculator.js';

// Kod testowy - nie modyfikuj
const result1 = calculator.add(10).multiply(2).getValue();
console.log(result1); // Powinno wypisać 20

// Zresetuj przed drugim testem
calculator.value = 0;
const result2 = calculator.add(20).divide(4).subtract(1).getValue();
console.log(result2); // Powinno wypisać 4
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Programowanie obiektowe

Poćwicz samodzielnie: Kompilator JavaScript online