6장 this

this 바인딩 판별 순서

this는 함수가 어디에 작성됐는지보다 어떻게 호출됐는지에 따라 달라지는 경우가 많고, 화살표 함수는 주변 this를 따릅니다.

01

Call

일반 함수 호출에서는 기본 바인딩 규칙을 확인합니다.

02

Method

객체의 점 표기 호출에서는 점 앞 객체가 this가 됩니다.

03

Explicit

call, apply, bind로 this를 직접 지정할 수 있습니다.

04

Arrow

화살표 함수는 자신만의 this를 만들지 않고 외부 값을 사용합니다.

전역 호출

엄격 모드 여부와 실행 환경에 따라 기본 this가 달라질 수 있습니다.

메서드 호출

함수를 변수에 떼어내면 원래 객체와의 연결이 사라질 수 있습니다.

new 호출

생성자 호출은 새 객체를 만들고 그 객체를 this로 연결합니다.

bind 활용

이벤트 핸들러나 콜백에서 의도한 this를 고정할 때 사용합니다.

판별 질문

이 함수가 호출된 실제 문장 모양에서 왼쪽 객체나 명시 바인딩을 찾습니다.

this 바인딩 판별 실수 방지

화살표 함수를 메서드로 쓰면 객체 자신을 this로 받지 못할 수 있습니다.

this 바인딩 판별 순서

같은 함수를 일반 호출, 메서드 호출, bind 호출로 실행해 결과를 비교합니다.