Skip to content
On this page

2021년07월11일

수정하기
문서 생성 2021-07-11 22:45:32 최근 수정 2021-07-11 23:05:31
On this page

Note

JavaScript

this

  • this는 상황에 따라 바라보는 대상이 달라지는데, 기본적으로 실행 컨텍스트가 생성될 때(함수를 호출할 때) 결정된다.
  • 전역 공간에서는 전역 객체를 가리킨다.
  • var a = 1로 전역 공간에서 선언하면 awindow.athis.a의 값은 같다.
    • 자바스크립트의 모든 변수는 특정 객체의 프로퍼티로서 동작하기 때문. 그 특정 객체는 바로 실행 컨텍스트의 LexicalEnvironment
  • 메서드 내부에서 this
    • 함수는 그 자체로 독립적인 기능 수행, 메서드는 자신을 호출한 대상 객체에 관한 동작을 수행
    • 어떤 함수를 객체의 프로퍼티로 할당한다고 해서 메서드가 아니라, 객체의 메서드로 호출할 경우에만 메서드로 동작하고 그렇지 않다면 함수로 동작
    • 함수로서의 호출과 메서드로서의 호출은 함수 앞에 점(.)의 여부
    • this에는 호출한 주체의 대한 정보가 담긴다. 메서드 호출시 this는 점 앞에 표기된 객체
    • 함수로 호출하는 것은 this가 지정되지 않는다. 전역 객체를 가리킨다.
      • 설계상 오류라고 한다.

log

  • 이런저런 일정을 소화하고 나니 시간이 10시 30분이었다... 그래도 책상에 앉은 나에게 박수를 보낸다. 👏👏👏

LINKS TO THIS PAGE