01. 상황에 따라 달라지는 this

⇒ 함수를 호출할 때 결정된다. → 어떤 방식으로 호출하느냐에 따라 this가 달라짐

3-1-1 전역공간에서의 this

⇒ 전역 객체 (전역 컨텍스트를 생성하는 주체가 바로 전역 객체이기 때문에)

⇒ 런타임 환경에 따라 다름 (브라우저→ Window, Node.js → global …)

3-1-2 메서드로서 호출할 때 그 메서드 내부에서의 this

⇒ 호출한 주체(객체)에 대한 정보

var func = function (x){
	console.log(this, x);
}
func(1); // Window { ... } 1
var obj = {
	method: func
}
obj.methd(2); // {method: f} 2

3-1-3 함수로서 호출할 때 그 함수 내부에서의 this