자바스크립트의 실행 컨텍스트란 뭘까?
실행 컨텍스트(Execution Context)는 코드가 실행되는 환경을 뜻하는데
변수를 스코프별로 관리하고 실행 흐름을 제어하는 중요한 개념이다.
실행 컨텍스트는 크게 세 가지 종류가 있다.
- 전역 실행 컨텍스트
- 함수 실행 컨텍스트
- eval 실행 컨텍스트
각 컨텍스트는 실행할 코드에 따라 스코프, 변수, 객체를 설정하고 관리한다.
이중에 eval은 사실 사용하지 않는거로 알고있는데
컨텍스트에 분류로 나와있어서
한번 내용을 찾아봤다.
eval 함수는 전달받은 문자열을 자바스크립트 코드로 실행하는 특징이 있는데
일단 한번 써봐야겠다
직접 사용해보니 매우 위험해보인다.
문자열로 함수를 만들어 넣으면 eval이 실행시켜주는 개념이니
보안성으로 따져도 위험해보이고..
아무튼 실행컨텍스트가 저렇게 나뉘고
실행컨텍스트의 생성과정을 살펴보면
생성과 실행단계로 분류되는데요
일단 실행 컨텍스트 환경은 코드가 실행되기 전에 생성되는데
생성단계 :
- 변수 객체 생성: 변수, 함수 선언, 매개변수를 수집하여 변수 객체를 만듬
- 스코프 체인 설정: 현재 실행 컨텍스트의 스코프 체인을 설정
- this 바인딩: this 키워드를 바인딩할 객체를 설정
실행 단계: - 변수 할당: 변수 객체의 변수를 실제 값으로 초기화
- 코드 실행: 코드가 한 줄씩 실행되며 변수와 함수가 실제로 할당
이렇게 분류할 수 있다.
그건 그렇고
아마존에서 서버비용이 청구되었는데
그간은 그냥 청구만 하고 돈은 결제하진 않더니
갑자기 카드에서 돈이 나갔다 ;;
물론 큰 금액은 아니지만...
취준생인 입장에서 돈만 나가서 답답하네..
쩝
공부할것도 많은데 요즘 프론트는 취업하기 힘들다 ㅠㅠ
스테픈 2km완료