변수는 var, let, const로 선언할 수 있습니다.
변수를 선언. 추가로 동시에 값을 초기화.
var로 변수를 선언하는 경우 하기와 같이 '5'라는 로그를 남깁니다. 이는 x의 범위가 if문 블록이 아니라 x가 선언된 함수이기 때문입니다.
if (true) {
var x = 5;
}
console.log(x); // 5
블록 범위(scope) 지역 변수를 선언. 추가로 동시에 값을 초기화
let의 경우 함수 내부에 변수를 선언하면, 오직 그 함수 내에서만 사용할 수 있기때문에 지역변수라고 부름
if (true) {
let y = 5;
}
console.log(y); // ReferenceError: y is not defined
블록 범위 읽기 전용 상수를 선언
변수 재선언, 재할당 불가능
const name = 'Hi!'
console.log(name) //Hi!
const name = "Hello!"
console.log(name) // Uncaught SyntaxError: Identifier 'name' has already been declared
name = "Bye!"
console.log(name) //Uncaught TypeError: Assignment to constant variable.