SEB Section 1 This
상황에 따라 달라지는 This
- this는 함수를 호출할 때 결정된다.
전역 공간에서의 this
- 전역 공간에서 this는 전역 객체를 가리킨다.
- 브라우저에서의 전역객체는 window, Node.js에서는 global 이다.
- 전역변수를 선언하면 자바스크립트 엔진은 이를 전역객체의 프로퍼티로 할당한다.
- 자바스크립트의 모든 변수는 실은 특정객체의 프로퍼티로서 동작한다.
- 전역객체에 프로퍼티를 할당 하는 것과 var로 선언한 것이 똑같이 작동한다.
메서드로서 호출할 때 그 메서드 내부에서의 this
함수 vs 메서드
- 프로그래밍 언어에서 미리 정해놓은 동작을 하는 코드 뭉치로, 이 둘을 비교하는데 있어 독립성의 차이가 있다.
- 함수는 그 자체로 독립적인 기능을 수행한다.
- 메서드는 자신을 호출한 대상 객체에 관한 동작을 수행한다.
(함수로서 호출, 메서드로서 호출)
var func = function(x) {
console.log(x);
}
fucn(1); // Window { ... } 1
var obj = {
method: func;
};
obj.method(2); // { method: f } 2
댓글남기기