누가봐도 인생 1회차의 기록장

스코프체인 2

모던 자바스크립트 Deep Dive #11 (스코프)

스코프란? 모든 식별자 (변수 이름, 함수 이름, 클래스 이름 등)는 자신이 선언된 위치에 의해 다른 코드가 식별자 자신을 참조할 수 있는 유효범위가 결정되는데, 이를 식별자가 유효한 범위 즉, 스코프scope(유효범위)라 한다. 자바스크립트 엔진은 스코프를 통해 어떤 변수를 참조해야 할 것인지 결정하는데, 이를 식별자 결정identifier resolution이라 한다. 따라서 스코프란 자바스크립트 엔진이 식별자를 검색할 때 사용하는 규칙이라고도 할 수 있다. 코드의 문맥과 환경 "코드가 어디서 실행되며 주변에 어떤 코드가 있는지"를 렉시컬 환경lexical enviroment이라고 부른다. 즉, 코드의 문맥context은 렉시컬 환경으로 이뤄진다. 이를 구현한 것이 "실행 컨텍스트exucution c..

코어 자바스크립트 #02 (실행 컨텍스트, 호이스팅, 스코프 체인)

남들이 봤을 때도 딱 알아보기 쉽게 정리하고 싶은데 (그래야 내가 나중에 다시 보기에도 쉽고) 정리가 너무 조잡한 거 같네.. ㅠㅠ 스코프, 스코프 체인 개념은 다시 봐도 어렵다 헿^^ 실행 컨텍스트 실행 컨텍스트execution context : 실행할 코드에 제공할 환경 정보들을 모아놓은 객체 스택 : 출입구가 하나뿐인 깊은 우물 같은 데이터 구조, 저장할 수 있는 스택이 넘칠 때 에러가 남 (ex. 데이터를 a, b, c, d 순으로 저장했다면 d, c, b, a 순으로 꺼냄, 후입 선출) 이것이 스택오버플로우의 그 '스택'!! 큐 : 파이프처럼 양쪽에 입구와 출구가 있는 구조 (ex. 데이터를 a,b,c,d 순으로 저장했다면 a, b, c, d 순으로 꺼냄, 선입선출) 동일한 환경에 있는 코드들을..