자바스크립트를 허용해주세요.
[ 자바스크립트 활성화 방법 ]
from Mohon Aktifkan Javascript!
 

[Javascript] New Javascript 1장 - 기본 문법(let, const)

728x90

✅ let 과 const 기본 개념

1️⃣ let 

  • 재할당 가능한 변수를 선언할 때 사용
  • 블록 스코프(중괄호 { } 안에서만 유효)
  • let이전에 사용한 var과 달리 호이스팅 시 undefined 초기화 없이 TDZ(Temporal Dead Zone)적용
let kg = 80;
kg = 72; // ✅ kg는 재할당 가능
console.log(`he is ${kg}kg`); // ✅ he is 72kg

2️⃣ const 

  • 재할당 불가능한 변수를 선언할 때 사용
  • 블록 스코프 동일 적용
  • 그러나 **값이 불변(immutable)""이라는 뜻은 ❌ -> 객체나 배열 내부 값은 변경 가능
const nickname = "paul smith";
// nickname = "Harry Potter"; // ❌ 재할당 불가

const user = { hobby: "reading" };
user.hobby = "gaming"; // ✅ 객체 속성은 변경 가능
console.log(` ${nickname} is hobby: ${user.hobby}`); //  paul smith is hobby: gaming

✅ var과의 차이점

특징 var let const
스코프 함수 스코프 블록 스코프 블록 스코프
재선언 가능 불가능 불가능
재할당 가능 가능 불가능
TDZ 없음 있음 있음
console.log(a); // ❌ a는 호이스팅으로 인해 선언 전에 접근 가능하지만, 초기화는 아직 안 됨
var a = 10; // ✅ a는 undefined로 초기화됨

console.log(b); // ❌ b는 호이스팅으로 인해 선언 전에 접근 가능하지만, 초기화는 아직 안 됨
let b = 2; // ✅ b는 호이스팅되지만, 초기화 전에 접근하면 ReferenceError 발생

✅ 3. 옮바르게 사용하려면? (2025년 기준)

  • 기본적으로 const 사용하기 -> 변수가 바뀔 필요가 없으면 const로 고정
  • 변수를 재할당해야 한다? -> let 사용
  • var는 사용하지 않음 (과거 호환성)

💡정리

  • const: "변경하지 않을 값"만 선언 (기본값)
  • let: "변경 가능"한 값을 선언할 때
  • var: 과거 유물, 새로운 코드에서는 사용을 지양

 

 

GitHub - javascript-only/newJSRoom: https://thinky.tistory.com/category/Front-End/JavaScript

https://thinky.tistory.com/category/Front-End/JavaScript - javascript-only/newJSRoom

github.com

 

728x90
LIST