자바스크립트는 개발자가 메모리 제어를 못한다고?
출퇴근길에 공부하는 자바스크립트1
변수란 하나의 값을 저장하기 위해 확보한 메모리 공간 자체 또는 그 메모리 공간을 식별하기 위해 붙인 이름을 말한다.
변수는 메모리에 저장이 된다. 정확히는 1바이트 즉, 8비트 단위의 메모리 셀에 저장되고 이러한 메모리셀의 집합을 메모리라고 부른다. 컴퓨터는 메모셀을 통해서 값을 저장하고 읽어드릴 수 있다. 그리고 메모리 각 셀은 메모리 주소를 갖는다.
JavaScript는 이러한 메모리 주소를 통해서만 메모리 제어를 할 수 있다. 그 이유는 값은 코드가 실행될 때마다 임의로 메모리 주소가 결정되기 때문이다. 즉, 같은 코드를 실행한다고 해도 메모리 주소는 변경되기 때문에 다른 값을 불러올 수 있다는 것이다.
그래서 직접적으로 메무리 주소를 통해서 값에 직접 접근하게 되면 다른 값이 변경되어서 혹여나 운영체제가 사용하고 있는 값을 변경하여 시스템 자체가 멈출 수 있다. 따라서 자바스크립트는 개발자의 직접적인 메모리 제어를 허용하지 않는 것이다.