Language/JavaScript
[JavaScript] JavaScript 함수와 이벤트(function, event/event handler)
도구혜지루루
2023. 11. 6. 07:19
728x90
반응형
함수
동작해야 할 목적대로 명령을 묶어 놓은 것
ex) alert()
함수 만드는 법
// 함수 선언(기본형)
function 함수명() {
명령
}
// 함수 호출(기본형)
함수명 () or 함수명 (변수)
function addNum() {
var n1 = 2;
var n2 = 3;
var sum = n1 + n2;
alert(sum);
}
addNum();
익명 함수
일반적으로 아는 function
함수 자체가 식이므로 함수를 변수에 할당할 수도 있고, 매개변수로 사용 가능
var sum = function(a, b){
retun a + b;
}
document.write(sum(1, 3));
즉시 실행 함수
식 형태로 선언하기 때문에 함수 선언 끝에 세미콜론(;) 붙임
(function(){
명령
}());
or
(function(매개변수){
명령
}(인수));
(function(a, b){
sum = a, b;
}(1, 2));
document.write(sum);
화살표 함수
ES6 이후 사용하는 => 표기법
익명 함수에서만 사용 할 수 있음
(매개변수) => { 함수 내용 }
// 기본형
const hi = function() {
return alert("안녕하세요?");
}
// 화살표 함수
const hi = () => { alert("안녕하세요?") };
// 기본형
let sum = function(a, b) {
return a + b;
}
// 화살표 함수
let sum = (a, b) => a + b;
이벤트
웹 브라우저나 사용자가 행하는 동자
주로 마우스나 키보드를 사용할 떄, 웹 문서를 불러올 때, 폼에 내용을 입력할 때 발생
이벤트 종류
마우스 이벤트
이벤트 | 설명 |
click | 요소에 마우스를 클릭했을 때 이벤트가 발생 |
dbclick | 요소에 마우스를 더블클릭했을 때 이벤트가 발생 |
mouseover | 요소에 마우스를 오버했을 때 이벤트가 발생 |
mouseout | 요소에 마우스를 아웃했을 때 이벤트가 발생 |
mousedown | 요소에 마우스를 눌렀을 때 이벤트가 발생 |
mouseup | 요소에 마우스를 떼었을 때 이벤트가 발생 |
mousemove | 요소에 마우스를 움직였을 때 이벤트가 발생 |
contextmenu | context menu(마우스 오른쪽 버튼을 눌렀을 때 나오는 메뉴)가 나오기 전에 이벤트 발생 |
키보드 이벤트
이벤트 | 설명 |
keydown | 키를 눌렀을 때 이벤트가 발생 |
keyup | 키를 떼었을 때 이벤트가 발생 |
keypress | 키를 누른 상태에서 이벤트가 발생 |
폼 이벤트
이벤트 | 설명 |
focus | 요소에 포커스가 이동되었을 때 이벤트 발생 |
blur | 요소에 포커스가 벗어났을 때 이벤트 발생 |
change | 요소에 값이 변경 되었을 때 이벤트 발생 |
submit | submit 버튼을 눌렀을 때 이벤트 발생 |
reset | reset 버튼을 눌렀을 때 이벤트 발생 |
select | input이나 textarea 요소 안의 텍스트를 드래그하여 선택했을 때 이벤트 발생 |
로드 및 기타 이벤트
이벤트 | 설명 |
load | 페이지의 로딩이 완료되었을 때 이벤트 발생 |
abort | 이미지의 로딩이 중단되었을 때 이벤트 발생 |
unload | 페이지가 다른 곳으로 이동될 때 이벤트 발생 |
resize | 요소에 사이즈가 변경되었을 때 이벤트 발생 |
scroll | 스크롤바를 움직였을 때 이벤트 발생 |
이벤트 처리기 (이벤트 핸들러)
이벤트가 발생했을 때 처리하는 함수
<태그 on이벤트명 = "함수명">
<a href="3" onclick="alert('버튼을 클릭했습니다.')"></a>
DOM을 사용하면 자바스크립트가 주인이 되어 HTML의 요소를 가져와서 이벤트 처리기를 연결
// 버튼 클릭해서 글자색 바꾸기
<button id="change">글자색 바꾸기</button>
<p> String </p>
// 방법 1: 웹 요소를 변수로 지정 & 미리 만든 함수 사용
var chagneBttn = document.quertSelector("#change");
changeBttn.onclick = changeColor;
function changeColor() {
document.quertSelector("#p").style.color = "#f00";
}
// 방법 2: 웹 요소를 따로 변수로 만들지 않고 사용
document.quertSelector("#change").onclick = changeColor;
function changeColor() {
document.quertSelector("#p").style.color = "#f00";
}
// 방법 3: 함수를 직접 선언
document.quertSelector("#change").onclick = function() {
document.quertSelector("#p").style.color = "#f00";
};
728x90
반응형