0

class GODListener {
  constructor() {
    this.counter = 0;
  }

handleClick() { this.counter += 1; console.log(this.counter); } }

const element = document.getElementById('testBtn'); const listener = new GODListener();

element.addEventListener("click", listener.handleClick);

<button id='testBtn'>Тест</button>
ksa
  • 6,872
  • потому что подписка без контекста: element.addEventListener("click", listener.handleClick.bind(listener)); – Тёма Kornishon Sep 18 '23 at 09:14
  • 1
  • this.handleClick = this.handleClick.bind(this) или 2) стрелочная функция handleClick = () => { code }. Пример https://jsfiddle.net/0x13hwft/
  • – soledar10 Sep 18 '23 at 09:16