2024/07/24 3

자바스크립트 호이스팅

1. 호이스팅 이란? 호이스팅은 자바스크립트에서 변수와 함수 선언이 그들이 속한 스코프의 최상단으로 끌어 올려지는 것처럼 동작하는 특성을 말합니다. 실제로 코드가 물리적으로 이동하는 것은 아니고 자바스크립트 엔진이 코드를 실행하기 전에 변수와 함수 선언을 먼저 메모리에 저장 하는 방식으로 작동합니다. 2. 변수 호이스팅 2-1 var 키워드var 키워드로 선언된 변수는 호이스팅 시 undefined로 초기화됩니다. 2-2 let 과 const 키워드let 과 const 로 선언된 변수도 호이스팅되지만 초기화되기 전까지 접근할 수 없는 일시적 사각지대(Temporal Dead Zone)에 놓이게됩니다.  3. 함수 호이스팅 3-1 함수 선언문함수 선언문은 전체가 호이스팅됩니다. 따라서 함수를 선언하기 전에..

자바스크립트의 실행 컨텍스트 / 스코프 / 클로저

1. 실행 컨텍스트란?실행 컨텍스트는 자바스크립트 코드가 실행되는 환경을 추상화한 객체입니다. 코드가 실행될때 필요한 환경 정보들을 모아 놓은 객체라고 할 수 있습니다.  2. 실행 컨텍스트의 역할스코프 관리 : 변수 , 함수 등의 식별자를 저장하고 관리합니다.실행 순서 관리 : 실행 컨텍스트 스택(콜 스택)을 통해 코드의 실행 순서를 제어합니다.3. 실행 컨텍스트의 종류전역 실행 컨텍스트 : 코드가 처음 실행될 때 생성되는 컨텍스트함수 실행 컨텍스트 : 함수가 호출될 때 마다 생성되는 컨텍스트eval 실행 컨텍스트 : eval 함수 내에서 실행되는 코드의 컨텍스트4. 실행 컨텍스트의 구조 실행 컨텍스트는 다음 세 가지 주요 컴포넌트로 구성됩니다.Lexical Environment(렉시컬 환경)Varia..

자바스크립트 변수의 종류와 범위 (지역 변수 등)

1. 지역 변수 (Local Variable) 정의 :함수 또는 메서드 내에서 선언된 변수입니다.해당 함수가 실행될 때 생성되고 함수가 종료되면 소멸됩니다.특징 : 함수 내에서만 접근 가능하며 함수 외부에서는 접근할 수 없습니다.메모리 사용이 효율적입니다. 함수 호출 시에만 메모리를 사용하고 함수가 종료되면 메모리가 해제됩니다. 2. 전역 변수 (Global Variable) 정의 :함수 외부에서 선언된 변수입니다.프로그램이 종료될 때까지 메모리에 존재합니다.특징 : 프로그램의 모든 함수에서 접근 가능합니다.전역 변수의 사용은 메모리 사용량이 증가할 수 있고 변수명이 충돌할 위험이 있으므로 최소화 하는 것이 좋습니다.  3. 블록 변수 (Block Variable) 정의 : {} 중괄호로 묶인 블록 내에..