권장하지 않는 방식이다.
다른 언어와이 차이점때문에 기록해둠.
--------------------------------------------------------------------------------------------------
function Cafe(menu) {
this.menu = menu;
function greet() {
console.log(`어서오세요, ${menu} 준비중입니다.`);
}
greet(); // 생성자 실행할 때 인사
}
const cafe1 = new Cafe('아메리카노');
// cafe1.greet(); // ❌ 오류! (cafe1에 greet() 메서드가 없음)
--------------------------------------------------------------------------------------------------
function Cafe(menu) {
this.menu = menu;
this.greet = function() {
console.log(`어서오세요, ${this.menu} 준비중입니다.`);
};
}
const cafe1 = new Cafe('아메리카노');
cafe1.greet(); // ✅ 어서오세요, 아메리카노 준비중입니다.
--------------------------------------------------------------------------------------------------
핵심 요약
this 없이 함수 작성 | 생성자 함수 안에서만 사용 가능. 객체에는 저장 안 됨. |
this로 메서드 작성 | 생성된 객체가 직접 메서드를 가지고 있어서 언제든 호출 가능. |
권장 방법 | 객체에 붙일 메서드는 반드시 this를 써서 작성하자. |
'IT > JavaScript와 Framework' 카테고리의 다른 글
생성자 함수내에 콜백함수 사용시 this 값은...? ( 화살표함수로 바꾸면?) (0) | 2025.04.29 |
---|---|
자바스크립트 객체선언, 생성자함수, class 문법 (0) | 2025.04.29 |
크롬 개발자도구에서 JQuery가 바로 실행되는 이유. (0) | 2025.04.28 |
자바스크립트 콜백지옥 해결법, 비동기 통신 (0) | 2025.04.01 |
자바스크립트 비동기 프로그래밍 (0) | 2025.03.27 |
댓글