변수 (var vs let vs const)
변수는 데이터를 담아두는 이름표가 붙은 보관 상자입니다. 최신 자바스크립트(ES6)에서는 안전한 코딩을 위해 var 사용을 엄격히 금지하고, let과 const만 사용합니다.
변수 보관함의 종류
사용 금지
var (구형 상자)
과거의 유물. 이름이 같은 상자를 실수로 또 만들어도 에러가 나지 않아, 큰 버그를 유발합니다.
let (재사용 금고)
안에 든 내용물(데이터)을 언제든지 다른 것으로 교체(재할당)할 수 있습니다.
기본 추천
const (잠긴 금고)
한 번 값을 넣으면 절대 내용을 바꿀 수 없어, 예측 가능하고 안전한 코드를 만듭니다.
// 1. var: 과거의 유물 (버그의 주범이므로 사용을 피하세요!)
var oldBox = "오래된 상자";
var oldBox = "이름을 중복 선언해도 에러가 안남!";
console.log("var oldBox:", oldBox);
// 2. let: 값이 변할 수 있는 변수 (최신 문법)
let score = 0;
score = 100; // 값 변경(재할당) 가능
console.log("let score:", score);
// let score = 50; // 에러! let은 똑같은 이름으로 두 번 선언할 수 없습니다.
// 3. const: 값이 절대 변하지 않는 상수 (최신 문법, 가장 권장됨)
const birthYear = 1995;
console.log("const birthYear:", birthYear);
// birthYear = 2000; // 에러! const는 값을 변경할 수 없습니다.
// 기본적으로는 안전한 const를 사용하고,
// 값이 바뀔 수밖에 없는 경우(반복문, 카운터 등)에만 let을 사용하세요!