Web/Javascript
JavaScript bind 사용법
selfstarter
2020. 7. 20. 15:39
JavaScript bind 사용법
JavaScript에서 this는 사용하고 있는 현재 객체를 뜻한다.
즉 this가 가변적이므로 내 의도와 다르게 this 사용되는 경우가 생긴다.
또 헷갈려서 지역변수와 this를 혼동하여 undefined 가 나오는 경우도 있다
$("#clickBtn").click(function(){
var testval = 20;
console.log(this.testval); // undefined
});
이렇게 this가 가변적이라 헷갈린다면
binid를 사용해서 해당 함수의 this를 특정객체로 고정시킬 수 있다
// 1. this를 사용할 객체 정의
var obj = {testval:10};
// 2. function 정의
function getTestVal(){
var testval = 20;
console.log(this.testval); // 2 0
}
// 3. bind함수에 this를 사용할 객체를 param으로 전달
var clickEvent = getTestVal.bind(obj);
$("#clickBtn").click(function(){
clickEvent();
});