Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Q1. 출력되는 값을 적어주세요
A1.
1, 2
Q2. 외부 함수 밖에서 내부함수가 호출되더라도 외부함수의 지역 변수에 접근할 수 있는 이유를 설명해주세요.
A2.
함수는 정의될 때 자신만의 스코프를 생성하며, 내부 함수가 외부 함수의 변수를 참조하면 클로저가 형성됩니다.
클로저는 상위 스코프를
[[Environment]]
내부 슬롯에 저장하여 함수가 정의될 때의 환경을 기억합니다,외부 함수의 생명주기가 종료되면 외부함수의 실행 컨텍스트는 실행 컨텍스트 스택에서 제거되지만,
내부 함수의
[[Environment]]
내부 슬롯에서 참조되고 있기 때문에 가비지 컬렉터의 대상이 되지않아외부함수의 렉시컬 환경까지는 소멸하지 않습니다.
이로 인해 외부 함수의 스코프에 있는 변수에 대한 참조를 계속 유지할 수 있습니다.
Q3. 빈칸을 채워주세요
객체의 상태를 나타내는 프로퍼티와 프로퍼티를 참조하고 조작할 수 있는 동작인 메서드를 하나로 묶는 것을 [ ] 라고 한다.
이때, [ ] 은 객체의 특정 프로퍼티나 메서드를 감출 목적으로 사용하기도 하는데 이를 [ ] 라고 한다.
A3.
캡슐화, 캡슐화, 정보은닉
#1004