inflearn logo
강의

Course

Instructor

Intermediate-Advanced JavaScript: Engine Core

4. Importance of scope binding, static/dynamic binding, and binding point

스코프 질문

253

ska02941089

5 asked

0

예를들어 function book() {} 이 존재한다고 가정했을때 어떤 순서로 스코프가 등록되고 레코드에 반영되는지 혼란스러워서 질문남깁니다.

 

1. 엔진이 function book을 만난다.

2. function 오브젝트를 생성한다.

3. function 오브젝트에 [[scope]] 를 등록한다.

4. 선언적 레코드에 { book: function(){} } 을 등록한다.

or 

1.엔진이 function book을 만난다.

2. function 오브젝트를 생성한다.

3. 선언적 레코드에 { book: function(){} } 을 등록한다.

4. function 오브젝트에 [[scope]] 를 등록한다.

 

둘 중 어느것이 맞는 순서일까요?

javascript

Answer 1

0

ms

  1. 엔진이 function book을 만난다.

  2. function 오브젝트를 생성해서 book 변수에 할당한다

  3. 생성된 function 오브젝트의 내부 프로퍼티인 [[scope]] 에 book 함수가 속한 (함수밖)의 스코프를 바인딩한다

  4. book 함수를 호출한다

  5. book 함수에 실행 컨텍스트 객체를 생성해 첨부한다

  6. 생성된 실행 컨텍스트에 렉시컬 환경 컴포넌트, 변수 환경 컴포넌트, this 바인딩 컴포넌트를 생성해 첨부한다

  7. 렉시컬 환경 컴포넌트에 환경 레코드를 생성해서 첨부한다

  8. 렉시컬 환경 컴포넌트에 외부 렉시컬 환경 참조를 생성해서 참부한다

  9. 외부 렉시컬 환경 참조에는 book function 의 [[scope]] 값이 반인딩 된다.

  10. 환경 레코드(선언전 환경 레코드)에 book 함수 안의 변수와 함수가 설정된다

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

0

419

1

__proto__ 에 대해 질문드립니다

0

315

1

호이스팅 코딩시간 풀이

0

358

1

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

0

340

1

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

0

345

0

slice

0

239

0

스코프가 뭔가요?

0

307

0

어려워요

0

255

0

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

0

339

1

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

0

300

0

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

1

542

1

this binding 논리 질문입니다.

0

279

1

파라미터 값을 매핑할 때

0

251

0

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

0

209

0

정리시간 입니다.

0

228

0

정리시간입니다.

6

269

0

정리 시간 입니다.

0

203

0

정리시간입니다.

6

227

0

코딩시간 입니다.

1

222

0

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

1

240

0

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

0

175

0

선생님 질문있습니다!!

0

159

0

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

0

217

0

엔진이 식별자 해결을 위해서 스코프를 사용한다고 하셨는데

0

185

0