JavaScript는 다양한 데이터 타입을 지원하며,
크게 원시 타입(Primitive types)과 객체 타입(Object types)으로 분류할 수 있다
이러한 데이터 타입들은 데이터를 저장하고 조작하는 방법을 결정한다
JavaScript의 주요 데이터 타입들은,
원시 타입 (Primitive Types)
원시 타입은 불변적(immutable)인 데이터 타입으로, 직접적으로 값을 변경할 수 없고, 새로운 값을 할당하려면 새로운 메모리 공간에 그 값을 저장하고 해당 변수의 참조를 변경해야 한다
원시 타입에는 다음과 같은 타입들이 있다:
- Number
- JavaScript에서 숫자를 표현하는 타입
- 정수 및 부동소수점 숫자를 포함
- 예를 들어, 42, 3.14 등
- String
- 텍스트 데이터를 나타내며, 작은따옴표('), 큰따옴표("), 또는 백틱(```)으로 묶인 문자들의 집합
- 예: 'Hello, world!'
- Boolean
- 논리적인 요소를 나타낸다
- true와 false의 두 가지 값을 가진다
- Undefined
- 변수가 선언되었으나, 어떤 값도 할당되지 않았을 때 사용된다
- Null
- '값이 없음'을 의도적으로 표현할 때 사용되는 타입
- null만이 이 타입의 유일한 값이다
- Symbol
- ES6에서 도입된 새로운 데이터 타입으로, 고유하고 변경 불가능한 값이다
- 주로 객체 속성의 키로 사용된다
- BigInt
- 매우 큰 정수를 표현하기 위한 타입
- Number 타입으로 표현할 수 없는 크기의 정수를 다룰 때 사용된다
객체 타입 (Object Types)
객체 타입은 키와 값의 집합으로, 복잡한 데이터 구조를 생성할 수 있다
JavaScript에서는 함수도 객체의 한 형태로 취급된다
객체 타입에는 다음과 같은 것들이 포함된다:
- Object: 키-값 쌍으로 구성된 데이터 구조 ex: { name: "John", age: 30 }
- Array: 순서가 있는 데이터 집합 ex: [1, 2, 3, 4, 5]
- Function: 실행 가능한 코드 블록을 나타내며, 호출될 때까지 실행되지 않는다
- Date, RegExp 등: JavaScript에 내장된 다양한 내장 객체 및 사용자 정의 객체들도 객체 타입에 속한다
데이터 타입의 중요성
JavaScript에서 데이터 타입을 이해하는 것은 중요하다
타입에 따라 변수가 메모리에 저장되는 방식, 변수를 조작할 수 있는 연산, 변수 간의 비교 방법 등이 결정되기 때문이다
또한, JavaScript는 동적 타입 언어로, 변수의 타입이 코드 실행 중에 변경될 수 있으며, 이는 유연성을 제공하지만 예기치 않은 버그를 초래할 수도 있다
따라서, 타입을 명확히 이해하고 주의 깊게 사용하는 것이 중요하다
'Frontend' 카테고리의 다른 글
자바스크립트 깊은 복사 & 얕은 복사 (1) | 2024.03.05 |
---|---|
자바스크립트의 프로토타입(Prototype) (0) | 2024.03.05 |
자바스크립트 형 변환 (0) | 2024.03.05 |
실행 컨텍스트란 (1) | 2024.03.04 |
렉시컬 환경이란 (0) | 2024.03.04 |