가비지 컬렉터

    자바스크립트의 메모리 관리

    프로그래밍 언어에서 메모리 생존 주기는 필요할 때 할당한다. 사용한다. (읽기, 쓰기) 필요 없어지면 해제한다. C언어와 같은 저수준의 언어에서는 할당 및 해제의 과정이 명시적이다. 그러나 자바스크립트와 같은 고수준 언어에서의 메모리는 가비지 컬렉터에 의해 자동적으로 관리된다. 가비지 컬렉터는 말 그대로 가비지를 수집하는 녀석이다. 여기서 가비지란 불필요하게 메모리에 남아있는 데이터를 말한다. 변수나 함수 등은 메모리에 할당된다. 프로그램은 메모리에 할당된 데이터를 읽거나 쓰는 작업을 통해 자신의 역할을 수행한다. 메모리에 남아있는 데이터가 그 쓰임을 다하고 나면 어떻게 될까? 데이터가 더 이상 필요 없다면 메모리 할당은 해제되어야 한다. 자바스크립트에서 가비지 컬렉터는 ‘Mark and Sweep’이라..