🖊️

var, let ,const, 스코프, 호이스팅 정리

var변수선언

var는 es6이전에 사용되던 선언문이다.
  1. 함수스코프 바깥에서 사용되면 참조에러가 발생.
  1. var키워드 없이 사용하면 전역으로 선언됨
  1. for문 안에서 var 선언되었을때 for문 바깥에서 참조가능
  1. 재정의가능
  1. 호이스팅

let, const 공통

  1. 블록스코프에서 선언된 변수를 해당 스코프에서 벗어나면 사용 불가능
  1. 변수가 정의된 시점보다 먼저 사용 할 수 없다. (참조에러발생)
  1. 호이스팅 불가

let

  1. 재할당가능

const

  1. 재할당불가
  1. 객체의 내부 속성의 값을 업데이트가능
👊
블록레벨 스코프, 함수레벨 스코프
👊
호이스팅