인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

hyuk22님의 프로필 이미지
hyuk22

작성한 질문수

코어 자바스크립트

var self = this 를 bind 메소드로 바꿔보는 도중에 궁금한 것이 있습니다.

작성

·

169

0

강의에서 var self = this를 bind함수로 대신 할 수 있다 하셔서 앞선 예제에 적용을 해봤는데 아래의 코드에서 왜 출력이 10이되는지 잘 모르겠습니다ㅠㅠ

var a = 10;

var obj = {

a: 20,

b: function() {

var c = function() {

console.log(this.a);

}

c.bind(this);

c();

}

}

obj.b();

답변 1

0

정재남님의 프로필 이미지
정재남
지식공유자

호출할때 함수로 호출했기 때문에 그렇습니다. 함수는 this를 바인딩하지 않아 여전히 전역객체를 바라보게 되어있습니다.

hyuk22님의 프로필 이미지
hyuk22

작성한 질문수

질문하기