-
[Java Script] 원시타입(Primitive Type) 과 참조타입(Reference Type) 알아보기Java Script 2023. 3. 22. 15:39
자바스크립트 자료형에는 크게 2가지 타입이 있는데
그게 원시타입과 참조타입입니다.
| 원시타입(Primitive Type)
1. 종류
원시타입의 종류는 다음과 같습니다.
- 숫자
- 문자열
- 불리언
- null
- undefined
- 심벌(Symbol)
2. 특성
원시타입의 데이터를 변수에 할당하면
변수(확보된 메모리 공간)에는 실제 값이 저장이 됩니다.
그래서 원시값이 같은 변수를 다른 변수에 할당하면
원본 원시값이 복사돼서 전달됩니다.
let a = 10; let b = a; // a의 원시값 10 복사 a = 11; console.log(a); // 11 출력 console.log(b); // 10 출력
| 참조타입(Reference Type)
1. 종류
참조타입의 종류는 대표적으로 다음과 같습니다.
- 배열(Array)
- 객체(Object)
- 함수(function)
2. 특성
참조타입은 변수에 할당하면
변수(확보된 메모리 공간)에는 참조 값이(메모리 주소) 저장됩니다.
그래서 참조타입을 가리키는 변수를 다른 변수에 할당하면
원본 값이 아닌 원본의 참조값이 복사되어 전달됩니다.
let a = { x : 10 }; let b = a; // 참조 값 복사 (변수 b 와 a는 동일한 객체를 가리킴) b.x = 11; // b 와 a 가동일한 객체기 때문에 둘다 변함 console.log(a); // { x : 11 } console.log(b); // { x : 11 } console.log(a === b) // true
let a = [1, 2, 3]; let b = [1, 2, 3]; console.log(a === b); // 변수 a와 b의 참조 값이 다름 따라서 false
'Java Script' 카테고리의 다른 글
[Java Script] 깊은 복사 와 얇은 복사 (0) 2023.03.24 [Java Script] 동기, 비동기 처리에 대해 (0) 2023.03.23 [Java Script] slice() 메서드 사용하기 (0) 2023.03.21 [Java Script] Constructor function(생성자 함수) 알아보기 (0) 2023.03.16 [Java Script] ?. 와 ?? 연산자 알아보기 (0) 2023.03.15