피드로 돌아가기
Dev.toFrontend
원문 읽기
JavaScript Events 입문 가이드가 addEventListener, 이벤트 전파, 이벤트 위임의 핵심 패턴을 단계별로 설명
JavaScript Events Made Simple: A Beginner-Friendly Guide
AI 요약
Context
웹사이트 상호작용을 구현하기 위해 JavaScript 이벤트 시스템을 이해하고 올바르게 적용해야 한다.
Technical Solution
- addEventListener() 메서드로 이벤트 리스너 등록: 요소에 클릭, 키다운, 서브밋 등의 이벤트 핸들러 부착
- 이벤트 객체의 event.target, event.type, event.key 속성 활용: 어떤 요소에서 어떤 이벤트가 발생했는지 식별
- event.preventDefault()로 기본 동작 차단: 폼 제출 시 페이지 새로고침 또는 링크 네비게이션 방지
- 이벤트 전파 제어: event.stopPropagation()으로 부모 요소로의 버블링 중단
- 이벤트 위임(Event Delegation): 부모 요소에 단일 리스너를 등록하고 event.target 검사로 동적으로 추가된 자식 요소도 처리
- removeEventListener()로 이벤트 리스너 제거: 리스너 등록 시 명명된 함수 사용 필수
Key Takeaway
이벤트 전파의 캡처링과 버블링 메커니즘, 그리고 이벤트 위임 패턴을 정확히 이해하면 불필요한 리스너 중복 등록을 피하고 동적 DOM 환경에서도 안정적인 이벤트 처리가 가능하다.
실천 포인트
동적 리스트 UI를 구현할 때 각 아이템에 개별 리스너를 붙이는 대신 부모 ul 요소에 click 리스너를 하나 등록하고 event.target.tagName으로 LI 엘리먼트를 판별하면, 나중에 새로운 li가 추가되어도 추가 코드 없이 자동으로 이벤트 핸들링이 작동한다