JavaScript

자바스크립트의 데이터 타입, 이론 1편

Hoon1994 2020. 7. 28. 21:55

항상 인강으로만 공부하다가, 회사 동료가 자바스크립트 이론 책을 하나 빌려주어 책을 보게됐다. 

책 제목은 '코어 자바스크립트' 로, 이론적인 부분에서 많이 도움이 된다고 하여 시작했다. 

 

첫 시작은 자바스크립트의 데이터 타입에 관련한 내용이었다.

자바스크립트의 데이터 타입은 기본형, 참조형이 있는데 둘의 차이가 무엇인지의 내용이었다.

 

기본형은 불변형인데, 불변이라는 것은 변하지 않는다는 것인데 a라는 변수에는 여러 값들을 넣을 수 있다.

var a = 'abc' 를 선언했다가, a = 'abcdef' 를 다시 선언하여 값을 바꿀 수 있는데 왜 불변이라고 할까? 

 

먼저, a라는 값을 선언하면 메모리에서 공간을 확보한다. 그리고 해당 공간의 이름을 a라고 저장한다. 

var a = 'abc' 로 값을 넣을 경우 a라는 이름의 공간에 값을 넣을 것 같지만 아니다. 

 

다른 별개의 공간을 새로 만들어서 abc 라는 값을 저장하고, 공간 a에서는 해당 데이터 공간의 주소값만 저장한다. 

그리고 다시, a = 'abcdef' 를 넣으면 abc 라는 값을 저장한 공간에서 abc를 abcdef로 바꾸는 게 아니라, 

다시 새로운 공간을 만들어서 abcdef 라는 값을 저장하고, a에서는 해당 공간의 주소값만 참고하게 된다. 

 

오늘 본 내용은 이렇다. 아직 첫 부분인데, 굉장히 흥미롭다. 필자는 비전공자이다 보니, 

국비지원으로 속성 과정을 익히고, 실무 관련 내용을 집중적으로 익혀서 그런지 이론적인 부분이 되게 흥미롭고 새롭다.