Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

24-2장 클로저 - 나세현 #1005

Merged
merged 1 commit into from
Dec 19, 2023
Merged

24-2장 클로저 - 나세현 #1005

merged 1 commit into from
Dec 19, 2023

Conversation

e6d1fe
Copy link
Contributor

@e6d1fe e6d1fe commented Dec 18, 2023

Q1. 출력되는 값을 적어주세요.

const increase = (function () {
	let num = 0;

	return function () {
		return ++num;
	}
}());

console.log(increase()); // ?
console.log(increase()); // ?

1
2

Q2. 외부 함수 밖에서 내부함수가 호출되더라도 외부함수의 지역 변수에 접근할 수 있는 이유를 설명해주세요.

자바스크립트 엔진은 함수를 어디서 호출했는지가 아니라 함수를 어디에 정의했는지에 따라 상위 스코프를 결정하기 때문이다. 따라서 외부 함수 밖에서 내부 함수를 호출하더라도 내부 함수의 상위 스코프인 외부 함수의 지역 변수에 접근할 수 있다.

Q3. 빈칸을 채워주세요.

객체의 상태를 나타내는 프로퍼티와 프로퍼티를 참조하고 조작할 수 있는 동작인 메서드를 하나로 묶는 것을 [ 캡슐화 ] 라고 한다.
이때, [ 캡슐화 ] 은 객체의 특정 프로퍼티나 메서드를 감출 목적으로 사용하기도 하는데 이를 [ 정보 은닉 ] 라고 한다.

issue #1004

@e6d1fe e6d1fe changed the title docs: 24.4~24.6 정리 24-2장 클로저 - 나세현 Dec 18, 2023
@Ryan-Dia
Copy link
Member

@Ryan-Dia Ryan-Dia added the valid label Dec 18, 2023
@Ryan-Dia Ryan-Dia merged commit aca626f into Next-by-Next:main Dec 19, 2023
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants