본문 바로가기
Javascript

자바스크립트 데이터 타입: 이론부터 실습까지

by Status Code 2024. 1. 2.

자바스크립트 데이터 타입

자바스크립트에서 데이터 타입은 변수가 저장할 수 있는 값의 종류를 정의합니다. 이 글에서는 자바스크립트의 주요 데이터 타입을 살펴보고, 각 타입에 대한 예제와 설명을 제공하여 이해를 돕겠습니다.

기본형(Primitive Data Types)

문자열(String)

문자열은 텍스트 데이터를 나타냅니다. 큰따옴표(""), 작은따옴표(''), 또는 백틱(``)으로 둘러싸인 문자의 연속입니다.

let name = "홍길동";
let greeting = '안녕하세요, ' + name + '님!';
let template = \`나의 이름은 \${name}입니다.\`;

숫자(Number)

자바스크립트에서 숫자는 정수와 부동소수점 숫자를 포함하는 하나의 숫자 타입만 존재합니다.

let integer = 10;
let float = 10.5;
let negative = -20;
let notANumber = NaN;

불리언(Boolean)

불리언은 참(true)과 거짓(false) 두 가지 값만을 가집니다. 조건문과 함께 자주 사용됩니다.

let isKorean = true;
let isMinor = false;

undefined

undefined 타입은 값이 할당되지 않은 변수를 나타냅니다.

let notAssigned;
console.log(notAssigned); // undefined

null

null은 의도적으로 값이 없음을 나타내는 데 사용됩니다.

let empty = null;
console.log(empty); // null

심볼(Symbol)

ES6에서 도입된 Symbol은 고유하고 변경 불가능한 데이터 타입입니다. 주로 객체 속성의 키로 사용됩니다.

let sym1 = Symbol('id');
let sym2 = Symbol('id');
console.log(sym1 === sym2); // false

참조형(Reference Data Types)

객체(Object)

객체는 키와 값의 집합입니다. 다양한 데이터 타입을 포함할 수 있으며, 복잡한 데이터 구조를 만드는 데 사용됩니다.

let person = {
    name: "홍길동",
    age: 30,
    isKorean: true
};
console.log(person.name); // "홍길동"

배열(Array)

배열은 순서가 있는 값의 집합입니다. 배열 내부의 요소는 어떤 타입이든 될 수 있습니다.

let fruits = ['사과', '바나나', '체리'];
console.log(fruits[0]); // "사과"

함수(Function)

함수는 특정 작업을 수행하거나 값을 계산하는 데 사용되는 코드의 집합입니다.

function greet(name) {
    return '안녕하세요, ' + name + '님!';
}
console.log(greet('홍길동')); // "안녕하세요, 홍길동님!"

결론

자바스크립트의 데이터 타입은 프로그램을 효율적으로 작성하고 오류를 줄이는 데 중요한 역할을 합니다. 각 데이터 타입을 이해하고 올바르게 사용하면 더욱 강력하고 유지보수가 쉬운 코드를 작성할 수 있습니다.

'John';
let age = 25;

숫자(Number)

숫자는 정수 또는 실수를 나타냅니다. 자바스크립트는 모든 숫자를 64비트 부동 소수점 형태로 처리합니다.

let price = 100;
let temperature = -3.25;

불리언(Boolean)

불리언은 true 또는 false 값을 갖는 타입입니다. 주로 조건문에서 사용됩니다.

let isAvailable = true;
let isAboveAge = false;

undefined

undefined는 값이 할당되지 않은 변수의 타입입니다.

let items;

null

null은 명시적으로 값이 없음을 나타내는 타입입니다.

let result = null;

BigInt

BigInt는 매우 큰 정수를 표현하기 위한 타입입니다.

const largeNumber = BigInt(9007199254740991);

심볼(Symbol)

Symbol은 고유하고 변경 불가능한 원시 데이터 타입입니다.

let sym = Symbol('description');

참조 타입(Reference Data Types)

객체(Object)

객체는 키와 값의 쌍으로 구성되며, 데이터와 기능을 모아 놓은 컨테이너입니다.

let person = {
    name: '홍길동',
    age: 30
};

배열(Array)

배열은 순서가 있는 값의 집합입니다. 배열 내부의 요소들은 어떤 데이터 타입이든 될 수 있습니다.

let fruits = ['사과', '바나나', '키위'];

동적 타이핑(Dynamic Typing)

자바스크립트는 동적 타입 언어입니다. 변수는 선언 시 타입을 지정하지 않으며, 런타임에 타입이 결정됩니다.

let data;       // undefined
data = 5;       // number
data = "Hello"; // string

타입 확인(Type Checking)

typeof 연산자를 사용하여 변수의 데이터 타입을 확인할 수 있습니다.

typeof 10;         // "number"
typeof 'JavaScript'; // "string"
typeof true;       // "boolean"
typeof Symbol('id'); // "symbol"
typeof {name: 'Alice', age: 25}; // "object"
typeof [1, 2, 3];   // "object" (배열도 객체로 간주)

댓글