상수는 값이 수정되지 않는지 확인해 봅시다. let에서는 처음 값을 대입한 후에 다른 값을 대입해 수정할 수 있었습니다. 하지만 const는 상수이므로 한번 값을 대입하면 다른 값을 대입할 수 없습니다.
> const value = '상수입니다.';
< undefined
> value = '바꿀 수 없습니다.';
Uncaught TypeError: Assignment to constant variable.
const도 식이 아니라 선언문이어서 콘솔에 undefined가 출력됩니다. 그리고 다른 값을 대입하면 에러가 발생합니다. 하지만 값을 바꿀 수 없다는 뜻은 아닙니다. 나중에 객체를 배울 때 값을 바꾸는 방법을 살펴보겠습니다.
const로 선언한 상수도 다시 선언할 수 없습니다. 하지만 let과 마찬가지로 콘솔에서는 편의를 위해 이미 선언한 상수를 다음 프롬프트에서 또 선언할 수 있게 허용합니다. 한 프롬프트에서 같은 변수를 여러 번 선언해야 에러가 발생합니다.
> const value = '상수입니다.'; const value = '다시 선언할 수 없습니다.';
Uncaught SyntaxError: Identifier 'value' has already been declared