public Class Person {
private String name;
public Person(String name) {
this.name = name;
}
}
위 그림에서 자바에서 this는 인스턴스 자신 (Self)를 의미한다
이게 프로그래밍 언어에서 일반적인 this의 의미 이지만
자바스크립트는 다르다!
let group = {
title: "1모둠",
students: ["보라", "호진", "지민"],
title2 : this.title,
title3() { console.log(this.title) }
};
console.log(group.title2); //undefined
group.title3(); // 1모둠
위 코드를 실행시키면 알 수 있듯이 함수 블록 스코프 내에서 선언된 this는 1모둠이 출력되는데 반대의 경우는 this가 undefined되어 출력된다.
참고
this | PoiemaWeb
자바스크립트의 this keyword는 Java와 같은 익숙한 언어의 개념과 달라 개발자에게 혼란을 준다. Java에서의 this는 인스턴스 자신(self)을 가리키는 참조변수이다. this가 객체 자신에 대한 참조 값을
poiemaweb.com
'자바스크립트' 카테고리의 다른 글
[인간 JS엔진 되기] 2-1. 비동기 - 콜백, promise, async/await (1) | 2023.12.20 |
---|---|
[인간 JS엔진 되기] 1-4,5. 스코프 체인 및 호이스팅 (0) | 2023.12.19 |
[인간 JS엔진 되기] 1-3. 호출 스택 분석 (0) | 2023.12.19 |
[인간 JS엔진 되기] 1-1. 함수와 함수의 호출 (1) | 2023.12.19 |
프로토타입 기반의 상속 (0) | 2023.09.04 |