Идея
Event listener — колбэк на EventTarget (элемент, document, window), который вызывается при событии: клик, ввод, сеть, кастомные события.
document.getElementById("myButton").addEventListener("click", () => {
alert("Button was clicked!");
});
addEventListener и опции
el.addEventListener("scroll", onScroll, {
capture: false,
once: true,
passive: true,
signal: controller.signal,
});
Снятие: тот же removeEventListener с той же функцией-ссылкой, либо AbortController.abort().
Практика
- Долгоживущие слушатели снимайте, когда фича уничтожена (утечки / «зомби»-хендлеры).
- Много однотипных детей → делегирование на родителе.
- Не анонимные функции, если планируете
removeEventListener.
Итог: слушатель связывает событие и реакцию; владение lifecycle и делегирование — часть зрелого ответа.