return된 함수 질문드립니다.
function makeCounter() {
let count = 0;
return function() {
return count++;
};
}
let counter = makeCounter();
console.log( counter() ); // 0(?)
console.log( counter() ); // 1(?)
console.log( counter() ); // 2(?)
좋은 강의 잘 듣고 있습니다만, Closure부터 이해가 안되기 시작하네요..
질문 드립니다..
위의 코드의 경우에
counter = function() { return count++; };
이라서 이를 counter()로 실행하면 counter를 찾아야하기 때문에 외부 렉시컬 환경으로 나가서
let counter = 0;
이라는 것을 찾아서 0을 가져와서 `++`로 증감시키면 1, 2, 3이되어야하는것 아닌가요?
이 부분이 0이 되는 이유를 모르겠습니다...
인스턴스에서 prototype 프로퍼티에 직접 접근해야하는 이유
0
73
1
setTimeout 에서 this
0
95
1
2강부터 영상이 나오지 않습니다.
0
190
1
자바스크립트 주석에 이상한 점이 있어서 문의드립니다.
0
235
2
return 문 안에 여러 함수가 존재하는 것이 이해되지 않습니다.
1
275
1
클래스 static 멤버
1
257
1
실행컨텍스트와 스택프레임
2
574
1
프로토타입으로 상속할때 브릿지 사용 이유
0
328
1
호이스팅 관련 질문
1
343
1
책 66p. 예제 3-2 질문입니다.
0
360
1
강의 내용 10:58 캡슐화 질문입니다.
1
405
1
강의 내용 5:10 질문입니다.
1
426
2
전역 공간에서의 this
0
431
2
18:31 addEventListener의 this
1
489
1
outerEnvironmentReference 질문
1
376
1
실행 컨텍스트와 클로저에 대해 질문드립니다.
1
456
1
Object.prototype.constructor의 [[prototype]] ?
1
661
1
함수를 값으로 할당할 때
2
462
1
15:54 'ddd' 사라지는 오류?
4
383
1
프로토타입 getPrototypeOf(instance).constructor(n,a) 질문입니다.
1
411
1
기본형/가변형 질문입니당
0
338
0
선생님 그러면 섹션 0만 봐도 무방한가요!?
0
341
1
Hoisting과 environmentRecord에 관한 질문입니다.
1
296
1
안녕하세요, 데이터 변경 질문입니다.
0
337
1

