자바스크립트 타입은 크게 두 가지로 나눌 수 있습니다. 원시 타입과 참조 타입입니다.

원시 타입에는 Boolean, String, Number, null, undefined, Symbol이 있습니다. 이들은 불변성을 가지고 있습니다.

참조 타입에는 Object, Array가 있습니다.

Untitled

기본적으로 Javascript는 원시 타입에 대한 값을 저장하기 위해 Call Stack 메모리 공간을 사용하지만 참조 타입의 경우 Heap이라는 별도의 메모리 공간을 사용합니다. 이 경우 Call Stack은 객체 및 배열 값이 아닌 Heap 메모리 참조 ID를 값으로 저장합니다.

Primitive types

Untitled

Object types

Untitled

스크린샷 2023-11-09 오후 4.17.54.png

자바스크립트는 동적 타입입니다.

JavaScript는 느슨한 타입(loosely typed)의 동적(dynamic) 언어입니다. JavaScript의 변수는 어떤 특정 타입과 연결되지 않으며, 모든 타입의 값으로 할당 (및 재할당) 가능합니다.

let foo = 42; // foo is number
foo = "bar";  // now foo is string
foo = true;   // now foow is boolean