개발/부족했던 개념

변수 var/let/const 차이

유우웁 2024. 9. 5. 11:13
반응형

하이 오늘은 변수 var / let / const 차이에 대해서 알아보겠슴다

1. var

(1)변수 중복으로 선언이 가능, 예기치 못한 값을 반환할 수 있음

(2)함수 레벨 스코프로 인해 함수 외부에서 선언한 변수는 모두 전역 변수로 된다.

(3)변수 선언문 이전에 변수를 참조하면 언제나 undefined를 반환

 

2, let

변수 중복 선언이 불가능, 재할당은 가능

let name = 'syb'
console.log(name) // output: syb

let name = 'hi' // output: Uncaught SyntaxError: Identifier 'name' has already been declared

name = 'hi'
console.log(name) // output: hi

 

3. const

변수 중복선언 불가능

let과 다른점은 반드시 선언과 초기화를 동시에 진행

// 원시값의 재할당
const name = 'syb'
name = 'hi' // output: Uncaught TypeError: Assignment to constant variable.

// 객체의 재할당
const name = {
  eng: 'syb',
}
name.eng = 'hi'

console.log(name) // output: { eng: "hi" }

 

항상 var로만 변수선언했는데, 상황에 맞게 선언하자.

반응형