상세 컨텐츠

본문 제목

원시자료형과 참조 자료형

웹 < 프론트앤드 >/자바스크립트

by 코린’s 2023. 5. 1. 16:17

본문

728x90
반응형

JavaScript에서는 데이터 유형을 원시(primitive) 자료형과 참조(reference) 자료형으로 구분합니다.

 

원시 자료형(primitive types)은 다음과 같습니다.

  • 숫자(number):  정수와 부동소수점 숫자를 모두 포함합니다.
  • 문자열(string):  따옴표로 둘러싸인 문자의 집합입니다.
  • 불리언(boolean): true와 false 중 하나의 값만 가질 수 있습니다.
  • null: 값이 없음을 나타내는 특별한 값입니다.
  • undefined: 값이 할당되지 않았거나 존재하지 않는 변수의 값입니다.
  • 심벌(symbol): ES6에서 새로 추가된 원시 자료형입니다.

 

참조 자료형(reference types)은 다음과 같습니다.

  • 객체(object): 객체는 키(key)와 값(value)의 쌍으로 이루어진 속성(property)들의 집합입니다.
  • 배열(array): 순서가 있는 값의 집합입니다.
  • 함수(function): 일급 객체(first-class object)로 함수를 변수에 할당하고, 함수를 다른 함수의 인수로 전달하고, 함수에서 함수를 반환할 수 있습니다.

 

원시 자료형은 값 자체를 저장하고, 참조 자료형은 값이 저장된 메모리 주소를 참조합니다. 즉, 원시 자료형은 변수에 값이 복사되고, 참조 자료형은 변수에는 값이 아닌 값이 저장된 메모리 주소가 저장됩니다.

따라서, 참조 자료형은 여러 변수에서 같은 메모리 주소를 참조할 수 있으므로 한 변수에서 값을 변경하면 다른 변수에도 영향을 미칩니다. 반면에 원시 자료형은 변수 간의 상호작용이 서로 독립적입니다.

 

 

  원시 자료형 참조 자료형
저장 방식 값 복사 주소(참조) 복사
데이터 크기 일반적으로 작은 크기 일반적으로 큰 크기
불변성 값을 직접 수정할 수 없음 값을 직접 수정할 수 있음
변수 할당 변수에 값을 할당하면 값이 복사됨 변수에 값을 할당하면 참조가 복사됨
예시 숫자, 문자열, 논리값 객체, 배열, 함수

 

728x90
반응형

'웹 < 프론트앤드 > > 자바스크립트' 카테고리의 다른 글

화살표 함수  (0) 2023.05.17
javascript underscore 언더스코어  (0) 2023.05.16
객체  (0) 2023.04.25
배열  (0) 2023.04.24
자바스크립트 - 변수와 데이터 타입  (0) 2023.03.10

관련글 더보기