JavaScript의 실행 컨텍스트와 Variable Environment 소개, 생성 방법
JavaScript에서 코드가 실행될 때, 실행 컨텍스트는 중요한 역할을 합니다. 이 실행 컨텍스트는 변수 환경(VariableEnvironment)을 포함하고, 코드가 실행되는 환경에서 사용 가능한 변수와 함수 정보를 저장합니다. 이 글에서는 VariableEnvironment의 역할과 예시 코드를 통해 이를 자세히 알아보겠습니다.
Variable Environment(변수 환경)의 역할
Variable Environment의 정의
Variable Environment는 현재 실행 중인 컨텍스트(전역 또는 함수 내부)에서 사용 가능한 변수와 함수 정보를 저장하는 객체입니다. 이 객체는 코드가 실행되는 동안 변수 및 함수에 접근하고 수정할 수 있는 공간을 제공합니다.
VariableEnvironment의 생성
Variable Environment는 실행 컨텍스트가 생성될 때 함께 생성됩니다. 함수 내부에서 실행 컨텍스트가 만들어질 때, 새로운 Variable Environment가 생성되며 함수의 인자, 지역 변수, 및 내부 함수를 저장합니다.
예시 코드로 VariableEnvironment 이해하기
function example() {
var a = 10;
function inner() {
var b = 20;
}
}
example();
- example 함수가 호출될 때, example 함수의 실행 컨텍스트와 VariableEnvironment가 생성됩니다.
- example 함수의 Variable Environment에는 a 변수가 저장됩니다.
VariableEnvironment의 스코프 체인
스코프 체인의 역할
VariableEnvironment는 스코프 체인을 형성합니다. 스코프 체인을 통해 변수 및 함수가 현재 범위 및 외부 범위에서 검색됩니다.
예시 코드로 스코프 체인 이해하기
function outer() {
var x = 10;
function inner() {
var y = 20;
console.log(x + y); // x와 y는 스코프 체인을 통해 접근 가능
}
inner();
}
outer();
inner 함수에서 x와 y 변수는 스코프 체인을 통해 outer 함수의 VariableEnvironment에서 찾을 수 있습니다.
끝으로
JavaScript의 실행 컨텍스트와 Variable Environment는 코드 실행 중에 변수 및 함수 정보를 저장하고 관리하는 중요한 역할을 합니다. VariableEnvironment를 통해 스코프 체인이 형성되며, 변수와 함수에 접근하는 메커니즘을 이해할 수 있습니다. 이를 통해 변수의 범위와 유효 범위를 파악하고, 코드를 효과적으로 작성할 수 있습니다.
▼ 아래 글도 읽어보세요! ▼
'Programming & Platform > JavaScript' 카테고리의 다른 글
JavaScript 실행 컨텍스트와 ThisBinding 소개, 생성 방법 (0) | 2023.11.10 |
---|---|
JavaScript 실행 컨텍스트와 Lexical Environment 소개, 생성 방법 (0) | 2023.11.10 |
JavaScript 호이스팅(Hoisting) 소개, 기능, 유의점, 예시 코드 (0) | 2023.11.07 |
JavaScript 실행 컨텍스트와 콜 스택 소개, 특징, 생성 과정, 예시 코드 (1) | 2023.11.06 |
JavaScript Spread 연산자 (...) 소개, 개념, 사용법, 예제 코드 (0) | 2023.11.05 |