Суть на практике
Событие — сигнал о том, что что-то произошло: клик, ввод, загрузка, сообщение с сервера, кастомный триггер. Код реагирует обработчиками (listeners), а не крутит вечный опрос.
button.addEventListener ("click" , (event ) => {
console .log ("clicked" , event.target );
});
Из чего состоит картина
Тип — "click", "keydown", "submit", …
Цель — элемент/объект, где произошло.
Объект события — Event / MouseEvent / … с деталями.
Обработчик — функция-реакция.
В DOM — ещё event flow (capture/target/bubble).
Не только DOM
window .addEventListener ("resize" , onResize);
el.addEventListener ("custom:save" , handler);
const es = new EventSource ("/stream" );
Паттерн pub/sub и EventEmitter в Node — та же идея «сигнал → подписчики».
Итог: события — асинхронные уведомления о действиях/изменениях; основа интерактивного UI.