자바스크립트 리뷰
객체의 속성으로 함수를 쓸때, 화살표 함수는 쓰지 않는다. [혼공자6-1-5]
가문비7
2023. 4. 8. 00:05
const test = {
a: function () {
console.log(this)
},
b: () => {
console.log(this)
}
}
// 메소드를 호출합니다.
test.a()
test.b()
객체 내에서 속성으로써 함수가 올 때, this 키워드가 뜻하는바가 많이 달라진다. 속성 a의 this는 test 객체 자체를 뜻하고,
속성b의 this는 여기서는 window 객체를 뜻한다. window객체는 쓸 필요가 별로 없는 것 같다. 객체의 속성으로 함수를 쓸때는, 축약형 화살표함수가 아니라 function(){} 형태의 온전한 형태로 사용한다.
메소드 호출결과, 콘솔창은 아래와 같이 된다.