this 란?
"this"는 JavaScript에서 자주 사용되는 예약어로서, 현재 실행 중인 함수 내에서 "this" 키워드를 사용하면 해당 함수가 호출될 때 어떻게 호출되었는지에 따라 다른 값을 가집니다.
this의 용법
보통 "this"는 객체 내에서 사용됩니다. 예를 들어, 객체의 메소드를 호출할 때 "this"를 사용하여 해당 객체를 참조할 수 있습니다. 또한, 생성자 함수에서 "this"를 사용하여 새로운 인스턴스를 생성하고 해당 인스턴스를 초기화할 수 있습니다.
"this"의 용법은 다양합니다. 객체의 메소드에서 "this"를 사용하여 해당 객체를 참조하거나, 생성자 함수에서 "this"를 사용하여 새로운 인스턴스를 생성하고 초기화하는 등 다양한 용도로 사용됩니다.
this의 동작방식
JavaScript에서 "this"의 동작 방식은 다소 복잡합니다. "this"의 값은 함수가 호출될 때 결정됩니다. 함수 호출 시점에 따라 "this"의 값이 결정되는데, 함수가 어떻게 호출되었는지에 따라 값이 달라집니다.
일반적으로 함수를 호출할 때 "this"의 값은 전역 객체를 가리킵니다. 하지만 객체의 메소드에서 "this"를 사용할 경우 해당 객체를 참조하게 됩니다. 또한, "call" 또는 "apply" 메소드를 사용하여 "this"의 값을 지정할 수도 있습니다.
코드에서 "this"를 사용하는 부분 중에서 가장 큰 차이점은 화살표 함수(arrow function)에서의 "this" 동작 방식입니다. 화살표 함수에서는 "this"가 함수가 아닌 외부 컨텍스트를 참조하게 됩니다. 따라서, 화살표 함수를 사용할 때 "this"를 사용하는 방식이 다소 달라집니다.
'CS' 카테고리의 다른 글
require와 import차이점 (0) | 2023.04.04 |
---|---|
브라우저 저장소 차이(local storage, session storage, cookie) (0) | 2023.03.31 |
Position의 사용방법 (0) | 2023.03.30 |
HTTP와 HTTP 메세지구조 (0) | 2023.03.30 |
캐시의 특징과 예시 (0) | 2023.03.29 |