1. This
- 어떠한 object를 가리키는 키워드
- python에서의 self
- 함수가 호출될 때 암묵적으로 전달 받는다.
- JavaScript에서의 this는 일반적인 프로그래밍 언어의 this와 조금 다르게 동작한다.
- JS에서는 같은 함수라도, 어떻게 호출되었는지에 따라서 this가 동적으로 결정된다.
2. 함수 문맥에서의 this
- 단순 호출
- 전역 객체를 가리킨다.
- 즉, 브라우저에서는 Window, Node.js 에서는 global
- Method(객체의 메서드로서)
- 객체의 메서드이므로 해당 객체가 바인딩 된다.
- Nested
- 콜백함수? ⇒ 함수 자체가 호출된 것이기 때문에 window를 가리킵니다.
- 이 문제를 해결하기 위함이 ‘화살표 함수’ 이다.
- 화살표 함수에서는 자동으로 한 단계 상위의 scope의 context를 바인딩한다.
- 함수 안의 함수 상황에서는 화살표 사용을 권장한다.
3. 전역 문맥에서의 this
- 브라우저 ⇒ window를 가리킨다.
Uploaded by N2T