javaScript
이벤트 리스너 안에서 this
mooyou
2023. 8. 11. 23:07
728x90
300x250
SMALL
var value=10;
$(document).ready(function(){
// 이벤트 리스너 등록
$("#btn").click(function(){
this.value=20;
value=30;
console.log("1. value = "+value);
console.log("2. this.value = "+this.value);
console.log("3. window.value = "+window.value);
});
});
/*
실행결과
1. value = 30
2. this.value = 20
3. window.value = 30
*/
이벤트 리스너에서의 this는 이벤트를 발생시킨 객체를 가르킨다. 그렇기 때문에 this.value=20; 여기서의 this는 #btn이 된다. 그렇기때문에 #btn객체에 value라는 프로퍼티를 동적으로 추가 하게 된다.
위에 코드 구조는 중첩함수와 동일한 구조인걸 확인할수 있다. 따라서 value=30구문은 중첩함수와 동일한 결과를 나타낸다.
728x90
반응형
LIST