728x90

자바스크립트에서 '변수'란?
변수(Variable)는 데이터를 저장하는 공간이에요.
이름을 붙여 어떤 값들을 담아두고,
필요할 때 그 이름을 불러서 사용할 수 있어요.
예를 들어
let name = "도희";
위 코드에서는 name이라는 변수에 "도희"라는 문자열을 저장했어요.
이제부터 name을 사용하면 "도희"를 의미하게 돼요.
변수 선언 방식 : var, let, const
자바스크립트에서는 변수를 선언할 때
세 가지 키워드를 사용할 수 있어요.
키워드
|
재할당 가능
|
재선언 가능
|
스코프
|
var
|
✅ 가능
|
✅ 가능
|
함수 스코프
|
let
|
✅ 가능
|
❌ 불가
|
블록 스코프
|
const
|
❌ 불가
|
❌ 불가
|
블록 스코프
|
각각 자세히 살펴보자
- var (거의 안 씀)
var nickname = "deco";
var nickname = "dodo"; // 재선언도 가능
-
- 재선언 & 재할당 모두 가능
- 하지만 너무 자유로워서 의도치 않은 버그 발생 가능성 ↑
- 스코프가 함수(function scope) 기준이라 예상 외의 동작 발생
📌 과거에는 많이 사용했지만, 지금은 잘 사용하지 않아요.
- let (가장 자주 씀)
let age = 25;
age = 26; // 재할당 가능
let age = 30; // 오류! 같은 이름으로 다시 선언 불가
-
- 재할당 가능, 재선언 불가
- 블록 스코프라서 if문, for문 안에서도 안전하게 사용 가능
- 보통 변하는 값을 저장할 때 사용
- const (절대 변하지 않는 값)
const PI = 3.14;
PI = 3.1415; // 오류! 재할당 불가
-
- 재할당 X, 재선언 X
- 반드시 처음에 선언할 때 값을 함께 할당해야 해요
- 변하지 않는 상수 값을 저장할 때 사용
💡보통 const로 먼저 선언하고,
정말로 바꿔야 할 필요가 있을 때만 let을 쓰는 게 권장 스타일이에요.
예제 코드로 비교하기
var x = 1;
let y = 2;
const z = 3;
x = 10; // 가능
y = 20; // 가능
// z = 30; // ❌ 오류: const는 재할당 불가
var x = 100; // 가능 (재선언)
let y = 200; // ❌ 오류 (재선언 불가)
블록 스코프란?
{
let a = 10;
const b = 20;
var c = 30;
}
console.log(a); // ❌ 오류
console.log(b); // ❌ 오류
console.log(c); // ✅ 30
let과 const는 블록 {} 안에서만 유효하지만,
var는 바깥에서도 접근 가능해요.
그래서 예전 코드에서 var로 인한 예상치 못한 변수 오염 문제가 많았어요.
변수 선언 없이 사용하면?
message = "Hello!"; // 선언 없이 사용
⚠️ 이건 바람직하지 않아요.
strict mode에서는 오류를 발생시키고,
전역 변수를 오염시킬 수 있기 때문에 항상 let이나 const로 선언하세요.
실무에서의 변수 선언 팁
- 변하지 않은 값은 const
- 변할 수 있는 값만 let
- 절대 var는 쓰지 않기
마무리 요약
키워드언제 사용하나?
const | 기본값, 바뀌지 않는 값, 상수 (권장 기본) |
let | 동적으로 바뀌는 값 |
var | 거의 사용하지 않음 (구 코드 유지 보수 외) |
🔜 다음 편 예고
[JavaScript 기본 연재 #3] 자료형(타입)
문자열, 숫자, 불린, null, undefined, 객체, 배열까지!
자바스크립트에서 값의 종류를 확실하게 정리해볼게요.
'Front > JavaScript' 카테고리의 다른 글
[JavaScript 기본 시리즈 #1] 🧠 자바스크립트란 무엇인가? (0) | 2025.07.08 |
---|---|
[JavaScript] 자바스크립트 브라우저 객체 모델 (0) | 2024.08.21 |
[JavaScript] Array 객체 (0) | 2024.08.06 |
[JavaScript] 사용자 정의 객체 (0) | 2024.08.06 |
[JavaScript] 객체 (0) | 2024.08.05 |