과제
this. 를 안 붙이면 reference Error가 뜨는데 선언을 했음에도 불구하고 왜 에러가 뜨는지 원인 찾아보기
var person = {
name: "홍길동", // 이름 프로퍼티를 정의함.
birthday: "030219", // 생년월일 프로퍼티를 정의함.
pId: "1234567", // 개인 id 프로퍼티를 정의함.
fullId: function() { // 생년월일과 개인 id를 합쳐서 주민등록번호를 반환함.
return this.birthday + this.pId;
}
};
this.
reference Error 에러가 발생하는 원인
var person = {
name: "홍길동", // 이름 프로퍼티를 정의함.
birthday: "030219", // 생년월일 프로퍼티를 정의함.
pId: "1234567", // 개인 id 프로퍼티를 정의함.
fullId: function() { // 생년월일과 개인 id를 합쳐서 주민등록번호를 반환함.
return birthday + pId;
}
};
this 는 메소드가 속해있는 객체를 참조 하게 되는데, this 가 있을 때에는 person의 birthday와 pId를 참조하여 (person.birthday, person.pId)의 역활을 하게 되지만, this 를 제외하게 되면 birthday 외부에서 pId 를 참조하려 하게 되고 외부에 birthday와 pId가 선언되어 있지 않기 때문에 에러가 발생한다.
본 후기는 정보통신산업진흥원(NIPA)에서 주관하는 <AI 서비스 완성! AI+웹개발 취업캠프 - 프론트엔드&백엔드> 과정 학습/프로젝트/과제 기록으로 작성 되었습니다.