Skip to content

Commit

Permalink
docs(22): 22. this (#113)
Browse files Browse the repository at this point in the history
* docs(22): 22장 기억에 남는 내용 추가

* docs(22): 22장 기억에 남는 내용 업데이트

---------

Co-authored-by: LSH-0125e <[email protected]>
  • Loading branch information
LSH-0125 and LSH-0125e authored Mar 14, 2023
1 parent 2e5c46e commit 8843718
Showing 1 changed file with 11 additions and 0 deletions.
11 changes: 11 additions & 0 deletions 7주차 (20~22장)/22. this/LSH0125/기억에 남는 내용.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# ✏️ 기억에 남는 내용

- ***this***
+ 자신이 속한 객체 또는 자신이 생성할 인스턴스를 가리키는 자기 참조 변수 -> 이를 통해 자신이 속하 객체 또는 자신이 생성할 인스턴스의 프로퍼티나 메서드를 참조할 수 있다.
+ this 바인딩은 함수 호출 방식에 의해 동적으로 결정된다. (함수를 호출하는 시점에 this 바인딩이 결정된다.)

- **함수 호출 방식에 따른 this 바인딩**
+ **일반 함수 호출** -> 기본적으론 전역 객체가 바인딩되고, strict mode 가 적용되었다면 undefined가 바인딩된다.
+ **메서드 호출** -> 메서드를 호출한 객체가 바인딩된다. 메서드를 '소유'한 객체가 아닌, 메서드를 '호출'한 객체가 바인딩된다.
+ **생성자 함수 호출** -> (미래에) 생성할 인스턴스가 바인딩된다.
+ **Function.prototype의 메서드에 의한 간접 호출 (apply, call, bind)** -> 함수를 호출하면서 첫 번째 인수로 특정 객체를 전달하여 this에 바인딩한다.

0 comments on commit 8843718

Please sign in to comment.