코딩 스쿨 JavaScript

언어선택 : HTMLCSSJAVAJAVASCRIPTMYSQLSQL PHP
▶ JavaScript Tutorial
JavaScript HOME
JavaScript Introduction
JavaScript Where To
JavaScript Output
JavaScript Statements
JavaScript Syntax
JavaScript Comments
JavaScript Variables
JavaScript Let
JavaScript Const
JavaScript Operators
JavaScript Arithmetic
JavaScript Assignment
JavaScript Data Types
JavaScript Functions
JavaScript Objects
JavaScript Object Properties
JavaScript Object Methods
JavaScript Object Display
JavaScript Object Constructors
JavaScript Events
JavaScript Strings
JavaScript String Methods
JavaScript String Search
JavaScript String Templates
JavaScript Numbers
JavaScript BigInt
JavaScript Number Methods
JavaScript Number Properties
JavaScript Arrays
JavaScript Array Methods
JavaScript Array Search
JavaScript Array Sort
JavaScript Array Iteration
JavaScript Array Const
JavaScript Dates
JavaScript Date Formats
JavaScript Date Get Methods
JavaScript Date Set Methods
JavaScript Math
JavaScript Random
JavaScript Booleans
JavaScript Comparisons
JavaScript If Else
JavaScript Switch
JavaScript Loop For
JavaScript Loop For In
JavaScript Loop For Of
JavaScript Loop While
JavaScript Break
JavaScript Iterables
JavaScript Sets
JavaScript Set Methods
JavaScript Maps
JavaScript Map Methods
JavaScript Typeof
JavaScript Type Conversion
JavaScript Destructuring
JavaScript Bitwise
JavaScript RegExp
JavaScript Precedence
JavaScript Errors
JavaScript Scope
JavaScript Hoisting
JavaScript Strict Mode
JavaScript this Keyword
JavaScript Arrow Function
JavaScript Classes
JavaScript Modules
JavaScript JavaScriptON
JavaScript Debugging
JavaScript Style Guide
JavaScript Best Practices
JavaScript Mistakes
JavaScript Performance
JavaScript Reserved Words

JavaScript Data Types

JavaScript Data Types: 다양한 데이터 타입의 이해와 활용

JavaScript는 동적 타이핑(dynamic typing) 언어로, 여러 가지 데이터 타입을 지원합니다. 각 데이터 타입은 서로 다른 특성과 사용 용도를 가지며, 이를 이해하면 변수를 적절하게 활용하고 코드의 효율성을 높일 수 있습니다. 이 가이드는 JavaScript의 데이터 타입을 체계적으로 살펴보고, 각 데이터 타입을 실제로 어떻게 활용할 수 있는지를 설명합니다.


1. 데이터 타입의 기본 개념

JavaScript에서 데이터 타입은 두 가지 범주로 나눌 수 있습니다: **원시 데이터 타입(Primitive Data Types)**과 객체 데이터 타입(Object Data Type).

1.1. 원시 데이터 타입(Primitive Data Types)

원시 데이터 타입은 변경 불가능한(immutable) 데이터로, 주로 기본적인 값을 표현합니다. JavaScript의 원시 데이터 타입은 다음과 같습니다:

  1. String: 문자열 데이터
  2. Number: 숫자 데이터
  3. Boolean: 참(true) 또는 거짓(false) 값
  4. Undefined: 값이 할당되지 않은 상태
  5. Null: 의도적으로 "없음"을 나타내는 데이터
  6. Symbol: 고유하고 변경 불가능한 값 (ES6에서 도입됨)
  7. BigInt: 임의의 정수를 나타내는 데이터 타입 (ES11에서 도입됨)

1.2. 객체 데이터 타입(Object Data Type)

객체 데이터 타입은 여러 값을 하나의 단위로 묶어 표현할 수 있는 데이터 구조입니다. 객체는 프로퍼티와 메서드를 포함할 수 있습니다.


2. 원시 데이터 타입

2.1. String

문자열 데이터는 텍스트 정보를 나타내며, 작은 따옴표('), 큰 따옴표("), 또는 백틱(```)으로 감쌀 수 있습니다.

const greeting = "Hello, World!";
console.log(greeting); // 출력: Hello, World!

2.2. Number

숫자 데이터는 정수와 부동 소수점 숫자를 포함합니다. JavaScript에서는 모든 숫자가 부동 소수점으로 저장됩니다.

const age = 25;
const price = 19.99;
console.log(age); // 출력: 25
console.log(price); // 출력: 19.99

2.3. Boolean

Boolean 데이터 타입은 두 가지 값인 true 또는 false를 가질 수 있습니다. 주로 조건문에서 사용됩니다.

const isAdult = true;
const hasPermission = false;

console.log(isAdult); // 출력: true

2.4. Undefined

Undefined는 변수에 값이 할당되지 않은 상태를 나타냅니다.

let uninitializedVariable;
console.log(uninitializedVariable); // 출력: undefined

2.5. Null

Null은 의도적으로 "없음"을 나타내는 데이터로, 어떤 값도 존재하지 않음을 표현합니다.

const emptyValue = null;
console.log(emptyValue); // 출력: null

2.6. Symbol

Symbol은 고유하고 변경 불가능한 값을 생성하는 데 사용됩니다. 주로 객체의 프로퍼티 키로 사용됩니다.

const uniqueKey = Symbol('description');
const obj = {
    [uniqueKey]: "This is a unique value"
};
console.log(obj[uniqueKey]); // 출력: This is a unique value

2.7. BigInt

BigInt는 임의의 정수를 나타낼 수 있는 데이터 타입으로, 큰 숫자를 다룰 때 유용합니다. 숫자 뒤에 n을 붙여서 사용합니다.

const bigNumber = 123456789012345678901234567890n;
console.log(bigNumber); // 출력: 123456789012345678901234567890n


3. 객체 데이터 타입

객체는 키-값 쌍으로 구성된 데이터 구조로, 다양한 형태의 데이터를 저장하고 조작할 수 있습니다.

3.1. 객체(Object)

객체는 여러 프로퍼티와 메서드를 포함할 수 있으며, 중괄호 {}를 사용하여 정의합니다.

const person = {
    name: "Alice",
    age: 30,
    greet() {
        console.log(`Hello, my name is ${this.name}`);
    }
};

console.log(person.name); // 출력: Alice
person.greet(); // 출력: Hello, my name is Alice

3.2. 배열(Array)

배열은 순서가 있는 데이터의 리스트로, 객체의 일종입니다. 대괄호 []를 사용하여 정의합니다.

const fruits = ["apple", "banana", "cherry"];
console.log(fruits[1]); // 출력: banana

3.3. 함수(Function)

함수도 객체로 취급되며, 객체의 프로퍼티로 할당하거나 다른 함수의 인자로 전달할 수 있습니다.

function greet(name) {
    return `Hello, ${name}!`;
}

console.log(greet("Bob")); // 출력: Hello, Bob!


4. 데이터 타입 확인

JavaScript에서는 변수의 데이터 타입을 확인할 수 있는 여러 방법이 있습니다.

4.1. typeof 연산자

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

console.log(typeof "Hello"); // 출력: string
console.log(typeof 42);       // 출력: number
console.log(typeof true);     // 출력: boolean
console.log(typeof null);     // 출력: object
console.log(typeof undefined); // 출력: undefined
console.log(typeof Symbol());  // 출력: symbol
console.log(typeof BigInt(123)); // 출력: bigint

4.2. Array.isArray()

배열인지 확인할 때 사용할 수 있는 메서드입니다.

const arr = [1, 2, 3];
console.log(Array.isArray(arr)); // 출력: true
console.log(Array.isArray({}));   // 출력: false


5. 요약

  • 원시 데이터 타입: String, Number, Boolean, Undefined, Null, Symbol, BigInt.
  • 객체 데이터 타입: 객체, 배열, 함수.
  • 데이터 타입 확인: typeof 연산자와 Array.isArray() 메서드를 사용하여 변수의 데이터 타입을 확인할 수 있습니다.

JavaScript의 다양한 데이터 타입을 이해하고 활용하면, 더 나은 웹 개발자로 성장할 수 있습니다. 이 가이드를 바탕으로 데이터 타입을 익히고, 실무에 적용해보세요!


copyright ⓒ 스타트코딩 all rights reserved.
이메일 : startcodingim@gamil.com