1. event
이벤트(event)는 어떤 사건을 의미한다.
브라우저에서의 사건이란 사용자가 클릭을 했을 '때', 스크롤을 했을 '때', 필드의 내용을 바꾸었을 '때'와 같은 것을 의미한다.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
</head>
<body>
<input type="button" onclick="alert(window.location)" value="alert(window.href)"/>
</body>
</html>
onclick 속성의 자바스크립트 코드 alert(window.location)
는 사용자가 이 버튼을 클릭 했을 '때' 실행된다.
즉, js 개발자는 어떤 일이 발생했을 때 실행 되어야 하는 코드를 등록하고, 브라우저는 그 일이 발생했을 때 등록된 코드를 실행하게 된다.
이러한 방식을 이벤트 프로그래밍이라고 한다.
2. event target
target은 이벤트가 일어날 객체를 의미한다.
위의 예제에서는 input
이 타겟이 된다.
3. event type
이벤트의 종류를 의미한다.
위의 예제에서는 click
이 이벤트 타입이다.
그 외에도 scroll은 사용자가 스크롤을 움직였다는 이벤트이고, mousemove는 마우스가 움직였을 때 발생하는 이벤트이다.
이벤트의 종류는 이미 약속되어 있다.
아래 링크는 브라우저에서 지원하는 이벤트의 종류를 보여준다.
https://developer.mozilla.org/en-US/docs/Web/Reference/Events
4. event handler
이벤트가 발생했을 때 동작하는 코드를 의미한다.
위의 예제에서는 alert(window.location)
이 여기에 해당한다.