2. 클로저의 활용 - 캡슐화와 정보 은닉 [1] 클로저는 상태(state)를 안전하게 변경하고 유지하기 위해 사용한다. 즉, 상태가 의도치 않게 변경되지 않도록 안전하게 은닉하고 특정 함수에게만 상태 변경을 허용하기 위해 사용한다. 이를 다음의 예시로 살펴보자. let num = 0; const increase = function () { return ++num; }; console.log(increase()); // 1 console.log(increase()); // 2 console.log(increase()); // 3 num = 10; console.log(increase()); // 11 위 코드는 num 값이 전역 변수를 통해 관리되고 있기 때문에 언제든지 누구나 num값에 직접 접근하여 ..