본문 바로가기

나의 FE피봇이야기/Javascript

[Javascript] 데이터의 저장

이 글은 책 '코어 자바스크립트'를 보고 재구성한 내용입니다.

자바스크립트 데이터 저장 사실

1. 변수를 하나를 만들면 메모리는 주소를 하나만들고 그곳에 이름(식별자:identifier)만들고 데이터 주소를 저장한다. 즉 두 번의 메모리 할당을 한다. 이유는 데이터(식별자의 정보값)이 가변적으로 변하기 때문이다.

변수에 원시값만 있을 경우

주소 ... 1001 1002 1003 ...
데이터   이름(식별자): aa
값:@8002
     
주소 .. 8001 8002 8003 ...
데이터     '바보'    

 

변수에 객체 정보가 있을 경우

주소 ... 1001 1002 1003 ...
데이터   이름(식별자): aa
값:@8002,13001 ...
     
(식별자 정보)주소 .. 8001 8002 8003 ...
데이터     이름 : foolish
값 : '바보'
   
(변수 객체)주소1 .. 4001 4002 4003 ...
데이터          
(변수 객체)주소2 .. 13001 13002 13003 ...
데이터   이름 : boo
값 : 20
     

 

2. 데이터(식별자의 정보값)을 수정(추가 및 변경)할 때마다 자바스크립트는 새로운 데이터를 만들어 주소에 추가한다. (만약 동일한 데이터 값일 없을 경우))