반응형
변수란?
변수는 데이터를 저장하고 관리하는 데 사용되는 메모리 공간의 이름입니다. JavaScript에서 변수는 var
, let
, const
키워드를 사용하여 선언할 수 있습니다.
변수 선언
var
키워드: ES6 이전에 변수를 선언할 때 사용되었으며, 함수 스코프를 가집니다.let
키워드: ES6에서 도입된 변수 선언 키워드로, 블록 스코프를 가집니다.const
키워드: 상수 선언 키워드로, 블록 스코프를 가지며, 재할당이 불가능합니다.
예제:
var name = 'Alice';
let age = 25;
const country = 'USA';
데이터 타입
JavaScript의 데이터 타입은 크게 원시 타입(Primitive Types)과 객체 타입(Object Types)으로 나눌 수 있습니다.
원시 타입
- 숫자(Number): 정수와 실수를 포함합니다.
- 문자열(String): 텍스트 데이터를 나타내며, 작은따옴표 또는 큰따옴표로 감쌉니다.
- 불리언(Boolean): 참(true)과 거짓(false)을 나타냅니다.
- null: 값이 없음을 나타냅니다.
- undefined: 변수가 선언되었으나 값이 할당되지 않았음을 나타냅니다.
- 심볼(Symbol): 고유하고 변경 불가능한 값을 생성하는 데 사용됩니다. (ES6에서 도입)
객체 타입
객체는 여러 값을 키-값 쌍으로 그룹화하여 저장할 수 있는 복합 데이터 타입입니다.
예제: 원시 타입
let number = 10; // 숫자
let name = 'Alice'; // 문자열
let isStudent = true; // 불리언
let emptyValue = null; // null
let notAssigned; // undefined
console.log(typeof number); // 'number'
console.log(typeof name); // 'string'
console.log(typeof isStudent); // 'boolean'
console.log(typeof emptyValue); // 'object' (null의 타입은 'object'로 표시됨)
console.log(typeof notAssigned); // 'undefined'
예제: 객체 타입
let person = {
name: 'Alice',
age: 25,
isStudent: true
};
console.log(typeof person); // 'object'
변수와 상수의 사용 예제
변수와 상수는 코드에서 다양한 용도로 사용됩니다. 변수는 값을 변경할 수 있으며, 상수는 값을 변경할 수 없습니다.
예제: 변수 사용
let score = 10;
console.log(score); // 10
score = 20;
console.log(score); // 20
예제: 상수 사용
const pi = 3.14159;
console.log(pi); // 3.14159
// pi = 3.14; // 오류 발생: 상수는 값을 변경할 수 없음
변수와 상수의 유효 범위 (스코프)
변수와 상수의 유효 범위는 코드 블록 내에서 어디에서든 접근할 수 있는지 여부를 결정합니다.
함수 스코프와 블록 스코프
- 함수 스코프:
var
키워드로 선언된 변수는 함수 스코프를 가집니다. - 블록 스코프:
let
과const
키워드로 선언된 변수는 블록 스코프를 가집니다.
예제: 함수 스코프
function testVar() {
var x = 1;
if (true) {
var x = 2; // 같은 변수
console.log(x); // 2
}
console.log(x); // 2
}
testVar();
예제: 블록 스코프
function testLetConst() {
let y = 1;
if (true) {
let y = 2; // 다른 변수
console.log(y); // 2
}
console.log(y); // 1
}
testLetConst();
결론
변수와 데이터 타입은 JavaScript에서 기본적인 개념이며, 코드를 작성하고 데이터를 관리하는 데 중요한 역할을 합니다. 이번 글에서는 변수 선언과 데이터 타입에 대해 배웠습니다. 다음 글에서는 연산자와 표현식에 대해 알아보겠습니다.
다음 글에서 만나요!
반응형
'JavaScript 문법 시리즈' 카테고리의 다른 글
[JavaScript 문법] 5일차: 반복문 (0) | 2024.08.05 |
---|---|
[JavaScript 문법] 4일차: 조건문 (0) | 2024.08.04 |
[JavaScript 문법] 3일차: 연산자와 표현식 (0) | 2024.08.03 |
[JavaScript 문법] 1일차: JavaScript 소개 및 설정 (0) | 2024.08.01 |
[JavaScript 문법] 목차 (0) | 2024.06.21 |