JavaScript · Middle · Pytanie 55 z 75

Dlaczego handlery zdarzeń często pisze się jako pola klasy z funkcjami strzałkowymi?

class Counter {
  count = 0;
  handleClick = () => { this.count++; };
}
button.addEventListener("click", counter.handleClick);

Wyjaśnienie

Metoda prototypu przekazana jako callback traci this. Koszt: każda instancja ma własną kopię funkcji zamiast jednej współdzielonej w prototypie.

Do poczytania

Błąd w pytaniu

JavaScript · Middle · pytanie 55

Sprawdź się

Rozwiąż test JavaScript · Middle: pytania i odpowiedzi są tasowane, a na końcu czeka przegląd błędów.

Rozwiąż ten test