[Javascript] this(정의, 활용방법, 바인딩, call, apply, bind)

반응형

다른 객체 지향 언어에서의 this는 곧 클래스로 생성한 인스턴스를 말하지만 자바스크립트에서는 this가 어디에서나 사용될수있다.

실행콘텍스트 : 실행할 코드에 제공할 환경 정보들을 모아놓은 객체
1 VariableEnvironment(VE)
2 LexicalEnvironment(LE)
3 ThisBindings

1. 전역 공간에서의 this
전역 객체를 가리킴

런타임 : 코드가 돌아가는 그 시간, 환경
1. 노드 -> global 객체를 의미
2. 브라우저 -> window 객체를 의미

함수는 스스로 실행이되는 것, 메소드는 어떤 객체가 실행시켜줘여함, 실행의 주치가 있어야함
함수는 this -> 전역 객체
메소드 this -> 호출의 주체 (객체.메소드 라면 객체)


함수로서 호출할때 그 함수 내부에서의 this

// AS-IS : 기존 것
// TO-BE : 바뀐 것

화살표함수는 this binding을 생략함


콜백함수




// 명시적 this binding
// call, apply, bind
// call

3. Array.from



ex



bind

반응형