const circle = {
// 프로퍼티 : 객체 고유의 상태 데이터
radius : 5;
getDiameter(){
// 이 메서드가 자신이 속한 객체의 프로퍼티나 다른 메서드를 참조하려면...객체를 가르키는 식별자로
// 참조 할 수 있다.
return 2 * circle.radius;
}
};
console.log(circle.getDiameter()); // 10
객체내의 getDiamter 메소드의 circle.radius의 circle참조 표현식이 평가되는 시점은 getDiameter 메서드가 호출되어서 함수 몸체가 실행되는 시점이다.
객체 리터럴은 객체를 가리키는 식별자가 존재하지만, 생성자 함수는 인스턴스를 생성하지 않으면, 객체내에서 그 생성자 함수를 가르킬 어떠한 식별자도 없다. 그래서 자바스크립트의 this
가 나왔다.
this
는 특수한 식별자이다.
<aside> ♻️ this는 자신이 속한 객체 혹은 자신이 생성할 인스턴스를 가리키는 자기 참조 변수이다.
</aside>
this
도 지역변수 처럼 사용 될 수 있다.const circle = {
radius : 5,
getDiamter(){
// 메서드를 호출한 객체를 가르킴
return 2 * this.radius
}
}
console.log(circle.getDiameter());