반응형
this는 가리킬뿐.
this는 객체 생성시, 함수 생성시 자동으로 생성되는 변수같은 놈이다.(그렇다고 변수는 또 아니다...)
this는 객체를 "가리킬"뿐이다. (자.동.으로)
"가리키다" 라는것이 잘 이해가 되지 않는다면 이 글을 보고 이해하고 와야한다. (pass by reference 부분)
this는 우리가 강제로 다른것을 할당할수는 없다.
this가 가리키는 object에 method나 property를 할당해 줄수가 있다.
아래는 this 가 window라는 전역객체(global object)를 가리킬때 name이라는 property를 할당하였다.
this의 4가지 바인딩(binding)
바인딩은 자동으로 어떤 객체를 가리키는것이라고 생각하면 될것같다. ( 자동으로가 키포인트 )
- 함수 내부에서 this -> window 객체 (전역객체)
- 클로저 내부에서의 this -> window 객체 (함수의 depth 가 깊어져도 전역객체를 가리키게 된다.)
- 객체(리터럴) 내부 메서드 에서 this -> 해당 객체
- 함수 생성자 내부에서 this -> 해당 인스턴스 객체
this는 가리킬뿐이다,
하지만 함수메소드를 이용하여 바인딩을 바꿀수가 있다.(응?)
cf. 다음 포스팅은 함수내부에서 this를 다른것으로 강제 바인딩시키는 것을 써야겠다.
반응형
'Frontend > JAVASCRIPT' 카테고리의 다른 글
[Javascript] prototype, __proto__, constructor (0) | 2020.02.14 |
---|---|
[Javascript] callBack은 call me back (0) | 2020.01.26 |
[Javascript] 객체를 만드는 방법, (class, function) (0) | 2020.01.20 |
[Javascript] 클로저(Closure) (0) | 2020.01.20 |
[Javascript] 변수가 살아가는곳, scope (0) | 2020.01.17 |