JavaScript - 문제 미리보기
문제 610
hard
다음 클로저 예제의 실행 결과는?
```javascript
function myCounter() {
let counter = 0;
return function() {
counter++;
return counter;
};
}
const add = myCounter();
console.log(add()); // 첫 번째 호출
console.log(add()); // 두 번째 호출
console.log(add()); // 세 번째 호출
```
정답: B
클로저가 형성되어 내부 함수가 외부 함수의 `counter` 변수에 접근할 수 있습니다. `myCounter()`는 한 번만 실행되어 `counter = 0`으로 초기화되고, 반환된 함수는 같은 `counter` 변수를 계속 참조하여 1, 2, 3이 차례로 출력됩니다.
💡 학습 팁
이 문제를 포함한 JavaScript 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.