실행 컨텍스트

김형석·2023년 7월 28일
0

코어 JavaScript

목록 보기
2/2

실행 컨텍스트

실행할 코드에 제공할 환경 정보들을 모아놓은 객체로, 자바스크립트의 동적 언어로서의 성격을 가장 잘 파악할 수 있는 개념 - 정재남 , 코어 자바스크립트

1. 실행 컨텍스트란 ?

한국말로 번역하면 문맥. 쉽게 코드의 실행 환경을 말한다.

컨텍스트의 4가지 원칙

  • 전역 컨텍스트 실행 뒤 함수 실행시 마다 함수 컨텍스트가 생성됨.
  • 컨텍스트 생성시 컨텍스트 안에 변수객체(arguments, variable), scope chain, this가 생성됨.
  • 컨텍스트 생성뒤 함수가 실행되는데, 사용되는 변수들은 변수 객체 안에서 값을 찾고, 없다면 스코프 체인을 따라 올라가며 찾음.
  • 함수 실행이 마무리되면 해당 컨텍스트는 사라짐.(클로저 제외) 페이지가 종료되면 전역 컨텍스트가 사라짐.

실행 컨텍스트의 종류

  • 전역 컨텍스트
  • 함수 컨텍스트
  • eval 컨텍스트 ( 더이상 쓰이지 않음 )

전역 컨텍스트

브라우저가 코드를 읽어들여서 실행할 때 발생하며, 페이지가 종료될 때까지 유지됨.

  • argument 존재하지 않음.
  • variable : 해당 스코프의 변수들
  • scope chain : 자기 자신인 전역 변수객체
  • this : 따로 설정하지 않았을 경우 window

함수 컨텍스트

함수 호출시 생성. 함수 실행이 마무리되면 해당 컨텍스트 사라짐. (클로저제외)

  • arguments : 해당 함수의 매개변수 (존재할수도 있고 안할수도 있음)
  • variable : 함수 스코프 내의 변수들
  • scop chain : 자기 자신과 상위의 스코프 및 전역 변수 객체
  • this : 따로 설정하지 않았을 경우 window
profile
코드로 소통하기 위해 힘쓰는 프론트엔드 개발자 입니다.

1개의 댓글

comment-user-thumbnail
2023년 7월 28일

공감하며 읽었습니다. 좋은 글 감사드립니다.

답글 달기