inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

자바스크립트 중고급: 엔진 핵심

3. 실행 콘텍스트 실행 과정, [정리 시간]

[정리 시간]의 작성 내용입니다.

180

이하영

작성한 질문수 16

4

안녕하세요. 좋은 강의 감사드립니다. 

[정리 시간]의 내용을 작성해보았는데요, 제대로 이해하고 있는 게 맞을까요..?

1. function 키워드를 만나 book이라는 function 오브젝트를 생성하고, 오브젝트의 [[Scope]]에 글로벌 오브젝트 설정

2. 마지막 줄에서 book() 함수를 호출하면

3. 엔진은 실행 콘텍스트를 생성하고 실행 콘텍스트 안으로 이동 

==준비 단계 (실행 콘텍스트에서 실행할 수 있는 환경 구축)==

4. 컴포넌트를 생성하여 실행 콘텍스트에 첨부

-렉시컬 환경 컴포넌트, 변수 환경 컴포넌트, this 바인딩 컴포넌트

5. 환경 레코드를 생성하여 렉시컬 환경 컴포넌트에 첨부

6. 외부 렉시컬 환경 참조를 생성하여 렉시컬 환경 컴포넌트에 첨부하고 

-book이라는 function 오브젝트의 [[Scope]]를 설정(참조)

==초기화 단계==

7. 호출한 함수의 파라미터 값이 있다면, 호출된 함수의 파라미터 값에 매핑하여 환경 레코드에 작성하나 파라미터 없음

8. function 키워드를 만나 get이라는 function 오브젝트를 만들고 [[Scope]]로 book 오브젝트를 설정 

9. point라는 변수에 undefined를 할당 

10. 여기까지는 외부에 실행 상태를 제공하지 않음 

==실행 단계==

11. book 함수 안의 코드를 실행

12. point 변수에 123을 할당

13. get() 함수를 호출하면 엔진은 실행 콘텍스트를 생성하고 실행 콘텍스트 안으로 이동 

get()함수의 실행 콘텍스트

==준비 단계==

15. 컴포넌트를 생성하여 실행 콘텍스트에 첨부

-렉시컬 환경 컴포넌트, 변수 환경 컴포넌트, this 바인딩 컴포넌트

16. 환경 레코드를 생성하여 렉시컬 환경 컴포넌트에 첨부

17. 외부 렉시컬 환경 참조를 생성하여 렉시컬 환경 컴포넌트에 첨부하고 

-get이라는 function 오브젝트의 [[Scope]]를 설정

 

==초기화 단계==

18. 파라미터가 없고 function 키워드나 변수가 없음

==실행 단계==

19. return point를 만나고, point라는 식별자를 외부 렉시컬 환경 참조에서 찾아 123을 반환 

20. get()함수의 reutrn 값이 book()함수의 return 값이므로 콘솔창에 123을 출력 

감사합니다!!

javascript

답변 1

0

김영보

깨끗합니다. 대단하세요^^

0

이하영

감사합니다~!!

getBook 실습 예제중 질문드립니다!

0

433

1

__proto__ 에 대해 질문드립니다

0

325

1

호이스팅 코딩시간 풀이

0

372

1

[코딩 시간] JS {name: value} 이해

0

347

1

[[Scope]] 와 [[Environment]]는 같은 개념인가요

0

349

0

slice

0

243

0

스코프가 뭔가요?

0

313

0

어려워요

0

260

0

강사님 변수이름에 get을 붙이는 이유를 알고싶습니다.

0

349

1

[정리 시간] 정확하게 이해했는지 확인 부탁드립니다.

0

308

0

스코프 질문

0

258

1

fn 함수와 book.get 함수 차이 질문드립니다...ㅠㅠㅠ

1

553

1

this binding 논리 질문입니다.

0

287

1

파라미터 값을 매핑할 때

0

256

0

ES6부터는 this 바인딩을 환경 레코드에서 참조한다고 들었습니다.

0

212

0

정리시간 입니다.

0

230

0

정리시간입니다.

6

277

0

정리 시간 입니다.

0

208

0

정리시간입니다.

6

234

0

코딩시간 입니다.

1

230

0

선생님 스코프 질문이 있습니다.

1

245

0

[정리시간] 해보았습니다!

0

183

0

선생님 질문있습니다!!

0

162

0

질문드려도 될까요 선생님..

0

221

0