DOM에서 발생하는 다양한 액션 또는 상호작용 동작을 나타내는 프로그래밍 인터페이스
각각의 이벤트에 대한 이벤트 핸들러 정의 가능
이벤트 핸들러 - 이벤트가 발생되면 실행될 코드 블록, 주로 함수가 이 역할 담당
이벤트 핸들러 등록 - 이벤트 핸들러 역할을 수행할 함수를 정의하는 것
이벤트를 처리할 타켓 선택 후 이벤트 핸들러 속성에 이벤트 핸들러 대입
[주의] - 이벤트 핸들러를 등록하기 위해 이벤트 속성에 함수를 대입하는 것과 함수 호출문을 대입하는 것은 다름
타켓.on이벤트명 = 이벤트핸들러 함수
->button.onclick = handleClick
onclick, onkeydown과 같은 이벤트 속성을 통해 이벤트 핸들러를 등록하는 것보다 편하고 유용한 이벤트 처리방법
장점
- 이전에 추가한 이벤트 핸들러를 제거할 수 있는 대응 메소드 존재
- 같은 리스터(타겟)에 대해 다수의 핸들러를 등록할 수 있음
addEventListener(이벤트명, 이벤트핸들러)
추가적인 기능과 정보를 제공하기 위해 이벤트 핸들러에 자동으로 전달되는 데이터
이벤트 핸들러 함수에 매개변수를 추가하여 이벤트 발생 시마다 전달받을 수 있게 해야함// click 이벤트가 발생하면 함수 호출하겠다 target.addEventListener('click',function(){})
// click 이벤트가 발생하면 함수를 호출하겠다 // + 이때 자동으로 전달되는 이벤트 객체를 매개변수 event에 대입하겠다 target.addEvenListener('click', function(event){})
input, select처럼 사용자로부터 입력을 받는데 사용되는 요소들이 있는데, 여기서 사용자가 입력한 값을 읽을때 value속성에 접근
입력 요소의 value에 접근하여 할 수 있는 일은 크게 두가지, 읽기와 쓰기
// 대상 요소의 사용자 입력값을 읽어 콘솔 출력 console.log(target.value)
// 대상 요소의 사용자 입력값을 "변경값"으로 target.value = "변경값"