작성
·
172
2
안녕하세요. 강의를 듣고있는 학생입니다.
강의를 보다가 this 관련하여 궁금한점이 있어 질문 남깁니다.
강의 8분 30초경에 나오는내용인데
p2.eat = function(food){ console.log(this.name+"이"+food+"를 먹었습니다."); p2.weight += 1; }
라고 코드를 짜셨는데 eat메소드에서 p2접근 안되서 this.name 쓰시고 그밑에서는 왜 p2.weight라고 쓰셨나요?
혹시나 해서 제가 p2.name, this.weight 라고 코드를 바꾸어서 메소드를 출력해봤는데 결과는 똑같았습니다.
그래서 정확히 뭐가 this 와 p2. 이랑 뭐가 다른지 모르겠습니다.ㅠ
설명 자세하게 부탁드릴게요..
답변 2
2
헉 제가 실수를 했네요. 문법상 p2는 사용하시면 안 되구요. 이번 경우에만 우연히 동작했다고 생각하면 됩니다.
this를 사용하셔야 합니다.
지금 단계에서 굳이 아셔야 할 내용은 아닌데요. 더 알고 싶으면 중급 서적이나 mdn등을 참고해 주세요.
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Operators/this
0