강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

dio sun님의 프로필 이미지
dio sun

작성한 질문수

코어 자바스크립트

this

18:31 addEventListener의 this

해결된 질문

작성

·

459

1

안녕하세요.

element.addEventListener 의 경우에는 this를 따로 지정한게 아니라 element의 메소드라서 this가 해당 element를 지칭한게 아닌가요?

 

앞선 설명에서는 메서드로 함수를 호출하면 호출한 주체가 this가 된다고 설명하셨는데 이경우에는 this를 따로 지정 했다고 하셔서 헷갈려서요

답변 1

0

정재남님의 프로필 이미지
정재남
지식공유자

element.addEventListener(event, callback) 호출시
addEventListener '메소드' 내부의 this는 element가 맞지만,

두번째 인자에 전달하는 callback함수 "function(e) { ... }" 내부에는
this가 그대로 적용되지 않습니다.

"함수"를 인자로 전달한 것입니다.
따라서 addEventListner 내부에서 특별한 조치를 취하지 않는 한 "함수"의 this 규칙이 적용됩니다.

dio sun님의 프로필 이미지
dio sun
질문자

그렇군요 답변 감사합니다!

dio sun님의 프로필 이미지
dio sun

작성한 질문수

질문하기