toggle-toggle / javascript-basic

🌱우아한 테크코스 프론트엔드 자바스크립트 기초 스터디 입니다.
9 stars 0 forks source link

[this] 객체의 메서드를 외부 변수에 할당하거나 함수의 인수로 전달하면 바인딩된 this가 사라지는 이유를 설명하세요 #25

Open Tanney-102 opened 3 years ago

Tanney-102 commented 3 years ago

참고 https://ko.javascript.info/reference-type

shinsehantan commented 3 years ago

외부 변수에 할당하는 경우

함수의 인수로 전달하는 경우

ddongule commented 3 years ago

this는 함수의 호출 방식에 따라 동적으로 결정되기 때문에 함수가 외부 변수에 할당되거나 함수의 인수로 전달하면 this가 가리키던 객체가 사라지게 된다.

bucketHaneul commented 3 years ago
jum0 commented 3 years ago

객체의 메서드에 접근하면 함수가 아닌 참조 타입 값을 반환하는데, 외부 변수에 할당하거나 함수의 인수로 전달하는 경우 참조 타입을 버리고 값(함수)만 받아 전달한다. 이 때문에 점 이외의 연산에서는 this의 정보가 사라진다.