일급 객체

    자바스크립트 클로저(Closures)란?

    자바스크립트는 기본적으로 함수 내부에서 선언된 변수를 외부에서 접근할 수 없다. 함수 내부의 변수는 함수의 실행이 끝나면 메모리 할당이 해제되기 때문이다. 하지만 일급객체의 속성으로 변수에 할당된 함수는 곧바로 할당이 해제 되지 않고, 이때 함수 내부의 변수의 값 역시 남아있게 된다. 🥘 일급객체는 변수에 할당될 수 있으며, 다른 함수의 인자로 사용될 수 있고, 다른 함수의 결과로서 리턴될 수 있다. 함수 내부에서 이 선언된 변수에 접근할 수 있는 함수를 클로저 라고 한다. 이 클로저를 통해서 Java의 객체의 private 함수처럼 외부에서 메서드를 통해서만 변경이 가능한 함수 내부의 변수를 만들 수 있다. const closure = () => { let count = 0; function showC..