본문 바로가기
웹 프로그래밍(Web Programing)/JavaScript

[JavaScript] 변수와 자료형

by 송기동 2024. 3. 8.
728x90

변수

# var

- ES5에서 사용되는 변수 선언 방식

- 함수 스코프를 가지며, 같은 변수를 여러 번 선언할 수 있음

- 호이스팅(hoisting)에 영향을 받음

# let

- ES6에서 도입된 변수 선언 방식

- 블록 스코프를 가지며, 블록 내에서만 유효

- 변수 재선언이 불가능

- 호이스팅에 영향을 받지 않음

# const

- 상수를 선언하는데 사용

- 재할당이 불가능하며, 선언과 동시에 초기화해야 함

- 블록 스코프를 가짐

- 재할당이 불가능하지만 객체 또는 배열과 같은 가변 객체를 가리키는 경우에는 내부 값이 변경될 수 있음

 

특징

# 동적 타입 언어(Dynamically Typed Language)

- 변수를 선언할 때 명시적으로 자료형을 지정할 필요 없음

- 변수의 자료형은 실행시간에 결정

 

# 변수의 유효 범위(Scope)

- 변수의 스코프는 변수가 접근 가능한 범위를 정의

- ES6 이전에는 함수 레벨 스코프가 사용 됨

- ES6 부터는 let, const 키워드를 사용하여 블록레벨 스코프를 지원


자료형

숫자형(Number)

let num = 10; // 정수
let floatNum = 3.14; // 부동 소수점 숫자

문자열(String)

let str = "Hello, world!";

논리형(Boolean)

let isTrue = true;
let isFalse = false;

객체(Object)

- 객체는 여러 속성(키와 값의 쌍)을 포함하는 컨테이너

- 함수, 배열, 날짜 등 모든 것을 객체로 나타낼 수 있음

let person = {
    name: "John",
    age: 30
};

함수(Fuction)

- 일련의 문장을 실행하는 코드 블록

- 코드의 재사용성과 모듈화를 위해 사용

function add(a, b) {
    return a + b;
}

배열(Array)

- 여러 값을 순서대로 저장하는 리스트

- 데이터를 그룹화하고 조작할 때 사용

let numbers = [1, 2, 3, 4, 5];

심볼(Symbol)

- 고유하고 변경 불가능한 데이터 타입, 객체 속성의 키로 주로 사용

const sym = Symbol("description");

그 외

- null 자료형은 값이 존재하지 않음을 나타냄- 변수를 초기화 하고자 할 때 사용될 수 있음

let nullVar = null;

 

- undefined 자료형은 값이 할당되지 않음을 나타냄

- 변수가 초기화되지 않았거나 존재하지 않는 속성에 접근할 때 반환

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

 

728x90

'웹 프로그래밍(Web Programing) > JavaScript' 카테고리의 다른 글

[JavaScript] 개요  (23) 2024.02.28