더북(TheBook)

getValue는 어디 있을까? 코드 아랫부분을 보면 yearlyPriceGrapher 객체가 인스턴화할 때 lineGenerator를 연도마다 특정 값을 반환하는 getValue 함수와 함께 묶는다. 다음 호출에서,

path = yearlyPriceGrapher.lineGenerator(years);

 

yearlyPriceGrapherlineGenerator의 ‘점 앞의 객체’다. 즉, yearlyPriceGrapher좌푯값 접근자의 this이므로 getValue 함수는 문제없이 실행된다. 그림 1-4는 결과 화면이다.

►그림 1-4

 

this는 자신이 모습을 드러낸 지점의 함수 또는 그 함수를 감싸는 객체를 가리킨다고 착각하기 쉽다. 절대 아니다. this는 함수를 호출한 객체를 참조한다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.