컨텍스트

jake·2021년 9월 7일
0

JavaScript문법

목록 보기
20/21
post-thumbnail

- excution 컨텍스트 (실행 컨텍스트)


1. 어떤 객체의 메소드에 접근한다는 뜻, 호출
2. 호출하는 맥락, this는 그 맥락을 가리키는 지시어
3. person 객체에 함수로 만들어 놨다 하더라도 실제로는 실행하는 순간 함수의 소유자가 결정됨. 때문에 person.getAge()를 실행하면 person객체의 함수로가서 return함
4. 이제 객체의 함수를 age라는 상수로 만들어서 호출하면 undefined가 뜸. 소유자가 누군지 불명확하다한다.
이것을 call과 apply로 객체를 지정해줄 수 있다.

5. class도 마찬가지로 this를 확인 할 수 없으니 myAge.call로 객체를 지정하여 사용한다.

6. call로 매번 사용하기 힘드니 bind 함수를 사용하여 this를 지정해준다.

- lexical 컨텍스트 (어휘 컨텍스트)

  1. bind 함수보다 더 편리하게 사용할 수 있는 에로우 함수 => 사용
  2. 아래 보면 getName 함수를 에로우 함수 =>를 사용하였고 const x에 p1객체의 getName함수를 넣었다.
    그리고 x를 호출하여 실행된다.
  3. bind라는지 apply를 사용하지 않아 더 편리하다. 그러나, 에로우 함수를 사용하면 this가 고정된다.
    this의 변경이 없을 때 사용하는 것이 좋다.
profile
열린 마음의 개발자가 되려합니다

0개의 댓글