원시 자료형과 참조 자료형

JavaScript에서 자료형(type)이란 값(value)의 종류입니다. 각각의 자료형은 고유한 속성과 메서드를 가지고 있습니다. 자료형은 크게 두 가지로 구분할 수 있는데, 바로 **원시 자료형(primitive type)**과 **참조 자료형(reference type)**입니다.

JavaScript에서는 6개의 자료형(number, string, boolean, undefined, null, symbol)을 원시 자료형으로 구분합니다. 원시 자료형이 아닌 모든 자료형은 참조 자료형입니다.

원시 자료형의 특징


  1. 원시 자료형을 변수에 할당하면 메모리 공간에 값 자체가 저장된다.
  2. 원시 값을 갖는 변수를 다른 변수에 할당하면 원시 값 자체가 복사되어 전달된다.
  3. 원시 자료형은 변경 불가능한 값(immutable value)이다. 즉, 한 번 생성된 원시 자료형은 읽기 전용(read only) 값이다.
let num = 20;

변수 num을 선언하면 컴퓨터는 num이라는 이름의 공간을 확보합니다. 그리고 20이라는 원시 값을 그 공간에 저장합니다. 이를 그림으로 나타내면 아래와 같습니다.

Untitled

만약 어떤 변수에 저장되어 있는 원시 자료형을 다른 변수에 할당하면 어떻게 될까요?

let num = 20;
let copiedNum = num:

원시 자료형은 값 자체가 복사됩니다. 즉, 변수 num과 변수 copiedNum은 동일하게 20이라는 값을 가집니다.

Untitled

참초 자료형