일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 딥다이브
- 파이썬
- 백준
- 프로퍼티
- git pull
- Deep Dive
- Algorithm
- Queue
- Execution context
- 실행 컨텍스트
- 솔리디티
- 변수
- 함수
- Python
- Interview
- 클로저
- solidity
- nft
- frontend
- Javascript
- 자바스크립트
- 알고리즘
- var
- 리액트
- react
- 블록체인
- BOJ
- 정렬
- blockchain
- let
- Today
- Total
목록Closure (2)
공부하자
클로저는 자바스크립트 고유의 개념이 아니다. 함수를 일급 객체로 취급하는 함수형 프로그래밍 언어(하스켈, 리스프, 스칼라 등)에서 사용되는 중요한 특성이다. MDN에서는 클로저에 대해 다음과 같이 정의하고 있다. A closure is the combination of a function and the lexical environment within which that function was declared. (클로저는 함수와 그 함수가 선언된 렉시컬 환경과의 조합이다.) 클로저를 자세히 알아보기 전 위 정의에서 가장 먼저 이해해야 할 핵심 키워드인 "함수가 선언된 렉시컬 환경"에 대해서 먼저 알아보자. const x = 1; function outerFunc() { const x = 10; functi..
실행 컨텍스트와 렉시컬 환경, 클로저는 자바스크립트에서 워낙 중요한 개념들이고 다 연관이 있어서 면접 준비를 하면서 한번에 정리를 해보았습니다. 제가 이해하기 쉽게 큰 개념정도만 간략하게 정리한거라 혹시 틀린것이 있으면 댓글로 알려주세요!!😊 모든 소스코드는 실행에 앞서 평가 과정을 거치며 코드를 실행하기 위한 준비를 한다. 평가 과정에서는 실행 컨텍스트를 생성하고 변수, 함수 등의 선언문만 먼저 실행하여 생성된 변수나 함수 식별자를 키로 실행 컨텍스트가 관리하는 스코프(렉시컬 환경의 환경 레코드)에 등록된다. 평가 과정이 끝나면 선언문을 제외한 소스코드가 순차적으로 실행되기 시작한다.(런타임) 이때 소스코드 실행에 필요한 정보, 즉 변수나 함수의 참조를 실행 컨텍스트가 관리하는 스코프에서 검색하여 취득..