[JS] 자바스크립트의 메모리 관리 (가비지 컬렉터)
·
개발/html, css, js
JS의 레퍼런스 js는 다른 언어와 다르게 포인터의 개념이 없다. 그렇기 때문에 포인터라는 개념 대신 참조(reference)를 이용한다. *GO언어는 포인터도 있고 가비지컬렉터가 있다. 포인터가 없다고 해서 가비지컬렉터가 있는건 아니다. 자바스크립트에서 변수에 값을 할당할 때, 실제 값이 저장되는 것이 아니라 값이 저장된 메모리 주소를 참조하는 방식으로 동작한다. 따라서 변수를 이용하여 값을 변경하면 해당 메모리 주소에 있는 값을 변경하게 된다. 예를 들어 아래 코드에서 'obj1'과 'obj2'는 같은 객체를 참조한다. 따라서 'obj1'의 프로퍼티를 변경하면 'obj2'에서도 변경된 값을 확인할 수 있다. var obj1 = { name: "John" }; var obj2 = obj1; obj1.n..