-
용어정리JavaScript 2023. 6. 19. 16:46728x90
1. 클로저 (Closure)
- 함수와 해당 함수가 접근할 수 있는 스코프(Scope)의 조합
- 함수 내부에서 정의된 함수가 외부 함수의 변수에 접근할 수 있는데, 이때 외부 함수가 종료되더라도 내부 함수가 외부 함수의 변수에 접근 가능- 데이터 은닉, private 변수 생성, 콜백 함수 등 다양한 상황에서 유용하게 활용됨
2. 호이스팅 (Hoisting)
- 자바스크립트 엔진이 코드를 해석하는 방식 중 하나
- 자바스크립트에서 변수 및 함수 선언이 소스 코드 상단으로 "끌어올려지는" 현상을 의미
- 변수의 경우, 선언 부분이 실제 코드보다 먼저 실행되어 undefined로 초기화됨
- 함수의 경우, 선언된 함수 전체가 끌어올려져 함수 호출 이전에도 호출될 수 있음3. 심볼 (Symbol)
- ES6에서 추가된 원시 데이터 유형 중 하나
- 유일하고 변경 불가능한 값, 주로 객체 속성의 키로 사용됨
- Symbol() 생성자 함수를 통해 심볼을 생성하고, 생성된 심볼은 전역 심볼 레지스트리에 등록
- 주로 객체 속성의 충돌 가능성을 방지하거나, 숨겨진 속성을 만들기 위해 사용4. 콜 스택 (Call Stack)
- 자바스크립트 엔진이 함수 호출을 관리하기 위해 사용하는 데이터 구조
- 함수가 호출될 때마다 해당 함수의 호출 정보(함수 호출 컨텍스트)가 스택에 추가되고, 함수가 반환될 때마다 해당 정보가 스택에서 제거됨
- 이러한 과정은 함수 호출의 순서를 추적하고, 함수 내부에서 다른 함수를 호출하는 등의 작업을 가능하게 함
- 함수 호출 중에 예외가 발생하면 에러 메시지와 함께 호출 스택을 추적하는 데에도 사용됨728x90반응형'JavaScript' 카테고리의 다른 글
Node.js 기초 (0) 2023.08.03 Ajax, 동기, 비동기 (1) 2023.07.22