일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 텍스트가 많은 경우
- react jsx if
- Docker Windows 설치
- springbatch chunk
- react link
- spring security
- react
- springbatch
- 코드 중복제거
- react forwardRef
- spring builder
- spring
- react quill custom
- react react-router-dom v6
- SpringBatch 스키마
- react Quill
- JPA Update\
- Spring DTO
- Spring JPA
- react Page
- Spring Controller return
- Spring Entity
- javascrpit 기초
- Spring CORS
- JPA Insert
- step 테이블
- javascript 함수
- javascript 기초
- editor Quill
- Javascript
- Today
- Total
천천히 알아보는 코딩공부
javascript 기초 2 - 실행 컨텍스트 본문
실행 컨텍스트 개념
- ECMAScriprt 에서는 실행 컨텍스트를 "실행 가능한 코드를 형상화하고 구분하는 추상적인 개념"으로 기술한다.
- 햔재 실행되는 컨텍스트에서 이 컨텍스트와 관련 없는 실행 코드가 실행되면, 새로운 컨텍스트가 생성되어 스택에 들어가고 제어권이 그 컨텍스트로 이동한다.
console.log("This is global context");
function Excontext1() {
console.log("this is Ex context1");
};
function ExContext2() {
ExContext1();
console.log("this is Ex context2");
};
ExContext2();
출력결과
This is global context This is ExContext1 This is ExContext2 |
- 실행 컨텍스트 생성 과정
※ 새로운 함수 호출이 발생하면 새로운 컨텍스트가 만들어지고 실행되며, 종료되면 반환된다.
"This is global context 출력; -> ExContext2() 호출 -> Excontext2() 실행 컨텍스트 스택 생성
-> Excontext1() 실행 컨텍스트 스택 생성 -> This is ExContext1 출력 및 실행 컨텍스트 종료
-> This is ExContext2 출력 및 실행 컨텍스트 종료
실행 컨텍스트 생성 과정
1. 활성 객체 생성
- 실행 컨텍스트가 생성되면 자바스크립트 엔진은 해당 컨텍스트에서 실행에 필요한 여러가지 정보를 담을 객체를
생성하는데, 이를 활성 객체라고한다.
ex ) Excontext2(); ---- 함수 호출시 활성 객체 생성
2. arguments 객체 생성
- 함수 호출시 활성 객체가 생성되는데 인수 정보(arguments) 표현한다.
ex ) function excute(param1, param2) // arguments -> param1, param2
3. 스코프 정보 생성
- 현재 실행중인 실행 컨텍스트 안에서 연결 리스트와 유사한 형식으로 만들어진다.
- 상위 실행 컨텍스트의 변수도 접근이 가능
4. 변수 생성
- 변수는 메모리에 생성하고, 초기화는 각 변수나 함수에 해당하는 표현식이 실행되기 전까지는 undefined가 할당 된다.
5. this 바인딩
- this가 참조하는 객체가 없으면 전역 객체를 참조한다.
6. 코드 실행
- 하나의 실행 컨텍스트가 생성되고, 변수 객체가 만들어진 후에, 코드에 있는 여러가지 표현식 실행이 이루어진다.
- 실행되면서 변수 초기화 및 연산, 또 다른 함수 실행 등이 이루어진다.
- 전역 실행 컨텍스트는 argements 객체가 없으며 전역 객체 하나만을 포함하는 스코프 체인이 있다.
'JavaScript > 기초' 카테고리의 다른 글
javascript 기초 1 - 함수(6) (0) | 2022.05.12 |
---|---|
javascript 기초 1 - 함수(5) (0) | 2022.05.12 |
javascript 기초 1 - 함수(4) (0) | 2022.05.12 |
javascript 기초 1 - 함수(3) (0) | 2022.05.11 |
javascript 기초 1 - 함수(2) (0) | 2022.05.11 |