네, 자바스크립트에는 const 키워드를 통해 상수가 존재합니다. ES6(ECMAScript 2015)에서 도입된 const는 한 번 값을 할당하면 더 이상 변경할 수 없는 읽기 전용(read-only) 참조를 생성합니다.
const로 상수 선언하기
const를 사용하면 값을 고정한 상수를 간단하게 만들 수 있습니다. 관례적으로 상수 이름은 대문자와 언더스코어(_)를 조합해 작성합니다.
const MY_CONSTANT = "some-value";
const의 주요 특징
1. 블록 스코프(Block Scope)
const는 함수 스코프를 가지는 var와 달리 블록 스코프를 따릅니다. 즉, 중괄호 {}로 묶인 블록 내에서만 유효하며, 블록 외부에서는 접근할 수 없습니다.
2. 재할당 및 재선언 불가
const로 변수를 선언하고 값을 할당한 이후에는 새로운 값을 할당할 수 없습니다. 같은 이름으로 변수를 다시 선언하는 것도 허용되지 않습니다.
// 'a'를 상수 변수로 선언 const a = 150; // 'a'는 상수이므로 새로운 값 할당 시도는 실패함 a = 0; // TypeError 발생 a++; // TypeError 발생 // 아래와 같은 재선언도 동작하지 않음 var a = 0; // SyntaxError 발생
정리
const는 값이 변하지 않아야 하는 설정값, 고정 데이터 등을 선언할 때 유용합니다. 단, const는 변수에 대한 재할당만 막을 뿐, 객체나 배열 내부의 속성 변경까지 막지는 않는다는 점도 함께 기억해 두면 좋습니다.