자바스크립트 데이터 타입

park·2026년 2월 6일

자바스크립트의 데이터 타입은 크게 원시 타입과 참조 타입으로 구분됩니다.

기본형/원시 타입(Primitive Type)

  • Number
  • BigInt
  • String
  • Boolean
  • null
  • undefined
  • Symbol

원시 타입의 값은 변경 불가능한 값이며,
변수에 값을 할당하거나 복사할 때 값 자체가 복사되어 전달됩니다.

원시 값은 불변(immutable)이며 값 변경은 재할당으로만 이루어진다.

예시
let a = 10
let b = a  // 값 자체가 복사됨

console.log(a) //10
console.log(b) //10

b = 20  // b에 새로운 값이 재할당됨

console.log(a) //10
console.log(b) //20



참조형/참조 타입(Reference Type)

  • Object
  • Array
  • Function
  • Map
  • Set

참조타입의 경우 메모리에 객체가 저장된 참조값(위치) 이 저장됩니다.
변수에 값을 할당할 때에도 객체가 저장된 참조값(reference)이 할당되며,
복사할 때에도 참조값이 복사됩니다.

따라서, 여러 변수가 같은 객체를 공유할 수 있으며,객체 내부 속성을 변경하면 원본에도 영향이 발생합니다.(얕은 복사에서 객체 내부의 참조는 변경되지 않아 발생)

예시
let obj1 = { x: 1 }
let obj2 = obj1 // 객체의 참조(주소)가 복사됨

obj2.x = 2  // 같은 객체를 수정

console.log(obj1.x) // 2
console.log(obj2.x) // 2
profile
park

0개의 댓글