Javascript | this - call / apply / bind

권기현·2020년 5월 17일
0

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를 가르킨다.※

profile
함께 일하고 싶은 개발자를 목표로 매일을 노력하고, 옷을 좋아하는 권기현 입니다.

0개의 댓글