this
1. 일반 함수에서 this
function foo() {
console.log(this)
}
2. 객체 메서드에서의 this
const car = {
madeBy: 'Hyundai',
model: '그랜져',
showInfo: function () {
console.log(this)
console.log(`제조사: ${this.madeBy}, 모델병: ${this.model}`)
}
}
car.showInfo();
3. 이벤트 핸들러에서의 this
- function으로 선언시 이벤트를 건 요소를 가리킴
const $btn = document.getElementById('btn')
const buttonHandler = function (e){
console.log("버튼 클릭!")
console.log(this)
this.style.background = 'red';
};
$btn.addEventListener('click', buttonHandler);
call, apply, bind
call
apply
bind
화살표 함수
클래스