function으로 만들었을때의 this는 자신이 속해 있는 객체를 가리키게 되는데
화살표함수로는 가리키지 못함 .
객체를 직접 꺼내 쓰면 해당 객체의 함수는 undefined.
const dog = {
name : '멍멍이',
sound : '멍멍!',
say: function(){
console.log(this.sound);
}
};
// function으로 만들었을때의 this는 자신이 속해있는 객체를 가리키게 되는데
// 화살표는 가리키지 못함.
const cat = {
name: '야옹이',
sound : '야옹~'
};
cat.say = dog.say;
dog.say(); // 멍멍!
cat.say(); // 야옹~
//const catSay = cat.say;
//catSay();
//TypeError: Cannot read property 'sound' of undefined
벨로퍼트님의 자바스크립트 강의를 듣고 작성하였습니다.
728x90
반응형
'Language > JavaScript' 카테고리의 다른 글
자바스크립트 - 객체의 속성과 값 표현하는 법 (0) | 2021.04.15 |
---|---|
자바스크립트 getter, setter (0) | 2021.04.13 |
ES6 자바스크립트 객체 (0) | 2021.04.13 |
ES6 화살표 함수 (0) | 2021.04.13 |
자바스크립트 논리연산자 실행 순서 (0) | 2021.04.10 |