본문 바로가기

배움의미학/JavaScript

자바스크립트에서 ‘this’는 어떤 역할을 하는가?

반응형
함수의 실행환경는 this에 영향을 미친다.

자바스크립트에서 this는 함수의 현재 실행 문맥이다.

 자바스크립트에는 4가지의 함수 실행 타입이 있기 때문이다.

함수 실행: alert('Hello World!')
함수 실행에서의 this는 전역객체이다.
웹브라우저에서의 this는 window다.
엄격모드(ECMA Script 5.1부터 use strict릉 적음)에서 this는 undefined이다.
해당 스코프에서 엄격모드가 적용되며 엄격모드와 비엄격모드를 한곳에서 동시에 사용 가능하다.
 


메소드 실행: console.log('Hello World!')
메소드 실행에서의 this는 메소드를 소유하고 깄는 객체다.


생성자 실행: new RegExp('\d')
새롭게 만들어진 객체다.

간접 실행: alert.call(undefined, 'Hello World!')






반응형