마우스 이벤트
| 이벤트 | 설명 | 
| click | 요소에 마우스 클릭했을 때 이벤트가 발생 | 
| dbclick | 요소에 마우스를 더블클릭했을 때 이벤트가 발생 | 
| mouseover | 요소에 마우스를 오버했을 때 이벤트가 발생 | 
| mouseout | 요소에 마우스를 아웃했을 때 이벤트가 발생 | 
| mousedown | 요소에 마우스를 눌렀을 때 이벤트가 발생 | 
| mouseup | 요소에 마우스를 떼었을 때 이벤트가 발생 | 
| mousemove | 요소에 마우스를 움직였을 때 이벤트가 발생 | 
| contextmenu | context menu(마우스 오른쪽 버튼을 눌렀을 때 나오는 메뉴)가 나오기 번에 이벤트 발생 | 
| mouseenter | 마우스가 요소로 처음 들어 갔을 때 | 
| mouselever | 마우스가 요소 밖으로 나갔을ㄴ 때 | 
키 이벤트
| 이벤트 | 설명 | 
| keydown | 키를 눌렀을 때 이벤트가 발생 | 
| keyup | 키를 떼었을 때 이벤트가 발생 | 
| keypress | 키를 누른 상태에서 이벤트가 발생 | 
폼 이벤트
| 이벤트 | 설명 | 
| focus | 요소에 포커스가 이동되었을 때 이벤트 발생 | 
| blur | 요소에 포커스가 벗어났을 때 이벤트 발생 | 
| change | 요소에 값이 변경되었을 때 이벤트 발생 | 
| submit | submit 버튼을 눌렀을 때 이벤트 발생 | 
| reset | reset 버튼을 눌렀을 때 이벤트 발생 | 
| select | input이나 textarea 요소 안의 텍스트를 드래그하여 선택했을 때 이벤트 발생 | 
로드 및 기타 이벤트
| 이벤트 | 설명 | 
| load | 페이지의 로딩이 완료되었을 때 이벤트 발생 | 
| abort | 이미지의 로딩이 중단되었을 때 이벤트 발생 | 
| unload | 페이지가 다른 곳으로 이동될 때 이벤트 발생 | 
| resize | 요소의 사이즈가 변경되었을 때 이벤트 발생 | 
| scroll | 스크롤바가 움직였을 때 이벤트 발생 | 
1. HTML 속성을 이용한 이벤트 처리
- 예를들어 'onclick' 속성을 사용하여 클릭 이벤트를 처리할 수 있다.
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>Insert title here</title>
		<script>
		  function myFunction() {
		    alert("버튼이 클릭되었습니다!");
		  }
		</script>
	</head>
	<body>
		<button onclick="myFunction()">클릭</button>
	</body>
</html>
2. 프로퍼티 방식
- 프로퍼티 리스너 방식은 이벤트 대상에 해당하는 객체의 프로퍼티로 이벤트를 등록하는 방식이다.
- 1번 방식에 비해 HTML과 JavaScript를 분리할 수 있다는 점에서 선호되는 방식이지만 추천하지는 않는다.
- 프로퍼티 방식은 이벤트에 오직 하나의 이벤트 핸들러만을 바인딩할 수 있다.
<button class="btn">Click me</button>
<script>
    const btn = document.querySelector('.btn');
    // 이벤트 핸들러 프로퍼티 방식은 이벤트에 하나의 이벤트 핸들러만을 바인딩할 수 있다
    // 첫번째 바인딩된 이벤트 핸들러 => 실행되지 않는다.
    btn.onclick = function() {
        alert('① Button clicked 1');
    };
    // 두번째 바인딩된 이벤트 핸들러
    btn.onclick = function() {
        alert('① Button clicked 2'); // << 실행결과 
    };
3. DOM 요소에 이벤트 리스너 추가
- JavaScript를 사용하여 DOM 요소에 이벤트 리스너를 동적으로 추가하는 방식이다.
- addEventListener 함수를 사용한다.
<button id="myButton">클릭</button>
<script>
  // 요소를 선택하고 이벤트 리스너를 추가
  document.getElementById("myButton").addEventListener("click", function() {
    alert("버튼이 클릭되었습니다!");
  });
</script>