uxtry

es6: const and let 본문

ES6 주요 문법 (es6:)

es6: const and let

uxtry 2024. 10. 29. 15:39

나란히 앉은 "const"와 "let' with chatGPT

 

constlet은 ES6에서 추가된 javascript 변수 선언 키워드 입니다. 두 키워드는 var와 다르게 블록 스코프를 가지며, 변수의 사용번위와 재할당 가능 여부에 차이가 있습니다.

 

1. let

  • 특징:  블록 스코프를 가지며, 재할당이 가능합니다.
  • 사용예시:
let x = 10;
x = 20; //재할당 가능
console.log(x); //20
  • 스코프: let은 블록 스코프를 가지므로, 선언된 블록(예: { } 사이)내에서만 접근할 수 있습니다.
if(true){
	let y = 5;
    console.log(y) //5
}
console.log(y); //ReferenceError: Y는 defined(초기화)가 아니다.

 

2. const

  • 특징: 블록 스코프를 가지며, 선언과 동시에 초기화가 필요하고 재할당이 불가능합니다.
  • 사용예시
const z =10;
z = 20; //TypeError: Assignment to constant variable
  • 재할당 불가: const로 선언된 변수는 상수처럼 동작하므로, 값이 한 번 설정되면 변경할 수 없습니다. 단, 객체나 배열처럼 참조형 데이터의 경우 내부 프로퍼티는 변경할 수 있습니다.
const arr = [1,2,3];
arr.push(4); //가능, 배열 자체는 변하지 않음.
console.log(arr); [1,2,3,4]

 

letconst의 주요 차이점 요약

특징 let const
스코프 블록 스코프 블록 스코프
재할당 가능 여부 가능 불가능(객체와 배열의 내부 상태는 변경 가능)
초기화 필요 여부 선언 후 초기화 가능 선언과 동시에 초기화 필수

 

언제 letconst를 사용할지

  • 값이 변경되지 않는 상수로 사용할때는  const를 사용하는것이 좋습니다.
  • 값이 변결될 수 있는 변수는  let을 사용하는 것을 권장합니다.