JavaScript는 동적 타입 언어로, 변수에 저장되는 데이터의 타입을 명시적으로 선언할 필요가 없습니다. 즉, 같은 변수에 다른 타입의 데이터를 할당 할 수 있습니다. JavaScript에서 데이터 타입을 이해하는 것은 값의 처리를 올바르게 수행하는데 필수적입니다. 기본적으로 JavaScript의 데이터 타입은 원시 타입(Primitive Type)과 참조 타입(Reference Type)으로 나뉩니다. 이번 글에서는 숫자(int), 문자열(string) 등의 주요 원시 타입을 중심으로 정리해보겠습니다.
원시 타입(Primitive Type)이란?
원시 타입은 한 번 생성되면 변경할 수 없는 값입니다. 하지만 변수 자체는 다른 값으로 재할당 할 수 있습니다.
1. 숫자형(Number)
let intNumber = 10;
let floatNumber = 3.14;
let infinityValue = 1 / 0;
let nanValue = "hello" * 3;
console.log(intNumber); // 10
console.log(floatNumber); // 3.14
console.log(infinityValue); // Infinity
console.log(isNaN(nanValue)); // true
- int(정수)와 float(부동소수점) 모두 Number 타입으로 처리됩니다.
- JavaScript는 64비트 부동소수점 형식을 사용합니다.
- 특수한 숫자 값으로 NaN(Not a Number)과 Infinity가 있습니다.
2. 문자열(String)
let singleQuoteStr = 'Hello';
let doubleQuoteStr = "Hello";
let templateLiteralStr = `say, ${singleQuoteStr}!`;
console.log(singleQuoteStr); // 'Hello'
console.log(doubleQuoteStr); // "Hello"
console.log(templateLiteralStr); // "say, Hello!"
- 문자열은 "", '', 또는 ``(백틱)으로 감싸서 표현할 수 있습니다.
- 백틱(``)을 사용하면 템플릿 리터럴로 문자열 내에 변수나 표현식을 쉽게 삽입 할 수 있습니다.
3. 불리언(Boolean)
let isAvailable = true;
let isOver = false;
if (isAvailable) {
console.log("It's a available!");
}
- true 또는 false 값만을 가집니다.
- 조건문, 반복문 등에서 논리적 판단을 위해 사용합니다.
4. undefined
let uninitializedVar;
console.log(uninitializedVar); // undefined
- 변수가 선언되었으나 초기화되지 않은 경우 기본 값으로 할당되는 값입니다.
5. null
let emptyValue = null;
console.log(emptyValue); // null
- null은 의도적으로 '값이 없음'을 나타냅니다.
6. 심볼(Symbol)
const uniqueKey = Symbol("unique");
console.log(uniqueKey); // Symbol(unique);
- 고유한 값으로, 주로 객체의 키 값으로 사용됩니다.
- ES6부터 추가되었습니다.
참조 타입(Reference Type)이란?
참조 타입은 Object(객체)로 크기와 구조가 가변적입니다. 참조 타입에는 배열, 함수, 객체 등이 있습니다.
1. 객체(Object)
let person = {
name: "John",
age: 25
};
console.log(person.name); // John
- {}로 표현하며, 키 - 값 쌍으로 이루어집니다.
2. 배열(Array)
let arr = [1, "Hello", true];
console.log(arr[1]); // "Hello"
- []로 표현하며, 순서가 있는 값들의 집합입니다.
3. 함수(Function)
function greet(name) {
return `Hello, ${name}`;
}
console.log(greet("Candy")); // "Hello, Candy"
- 함수도 객체의 한 종류로, 호출 가능한 코드 조각입니다.
typeof 연산자
어떤 타입인지 확인하고 싶을 때 typeof 연산자를 사용하여 확인 할 수 있습니다.
console.log(typeof 10); // number
console.log(typeof "Hello"); // string
console.log(typeof null); // object
JavaScript의 데이터 타입은 크게 원시 타입과 참조 타입으로 나뉘며, 각각 다르게 메모리에 저장되고 동작합니다. 원시 타입은 값 자체를 저장하지만, 참조 타입은 메모리 주소를 참조합니다. 숫자형, 문자열, 불리언, undefined, null, 심볼은 모두 기본적인 원시 타입으로 다양한 연산과 조건문에서 사용됩니다. 타입을 올바르게 이해하고 사용함으로써 코드의 안정성과 가독성을 높일 수 있습니다.
'개발 지식 한스푼' 카테고리의 다른 글
JavaScript _ 바닐라 JS란? (0) | 2025.01.15 |
---|---|
JavaScript _ list 와 array (0) | 2025.01.12 |
JavaScript _ NaN (Not a Number) (0) | 2025.01.11 |
JavaScript _ null 과 undefined (0) | 2025.01.09 |
JavaScript _ 변수 var, let, const (0) | 2025.01.08 |