0. this
this는 지정하지 않으면 보통 window객체(실행문맥에서의 주체)를 가르킵니다. 함수내에 쓰이는 this를 window객체가 아닌 다른 객체로 사용하고 싶을 때 [call / apply / bind]가 사용된다고 알고 있습니다.
1 .call & apply
- call과 apply의 공통점
: 함수를 실행할 때 함수 내에서 this를 지정해주기 위해서 쓰는 메소드입니다.
: 첫번째 인자로 실행되는 함수내에서 this 로 쓰일 객체를 지정 / 두번째 인자로 함수내에서 쓰이는 인자 설정
- call과 aplply의 차이점
: apply는 인자를 하나의 배열로 묶을 수 있다.
2. bind
- call / apply 의 큰 차이점
: bind는 위의 메소드와는 달리 함수에서 가르키는 this만을 바꾸고 호출되지 않아도 됩니다.
※ 화살표 함수는 bind를 적용시키더라도 언제나 상위스코프의 this를 가르킨다.※