실행 컨텍스트 빠르게 이해한 내용 글로 정리하기
컨텍스트(문맥)은 우리가 작성한 코드가 실행되는 환경입니다.
컨텍스트는 전역 컨텍스트와 함수 컨텍스트가 있습니다.
자바스크립트 엔진은 소스를 두번 스캔하며, 생성 단계(Creation phase)와 실행 단계(Execution phase)가 나눠져있습니다.
생성 단계의 변수객체(지역)는 값이 할당되지 않고 생성 단계에서 부여(실행)됩니다.
코드가 실행되기 전에 생성이 되며, 함수 내에 없는 코드는 모두 전역 실행 컨텍스트에 포함되어 있는 것입니다.
하나의 전역 실행 컨텍스트 만이 존재합니다.
전역 컨테스트 하나 생성 후 함수 호출 시마다 컨텍스트가 생깁니다.
컨텍스트 생성 시 컨텍스트 안에 변수객체, 스코프체인, this가 생성 됩니다,
컨텍스트 생성 후 함수가 실행되는데, 사용되는 변수들은 변수 객체 안에서 값을 찾고, 없다면 스코프 체인을 따라 올라가서 찾습니다.
함수 실행이 마무리되면 해당 컨텍스트는 사라집니다.
페이지가 종료되면 전역 컨텍스트가 사라집니다.
Reference
https://www.zerocho.com/category/JavaScript/post/5741d96d094da4986bc950a0
뭔진 모르겠지만 유익하네요~ :)