JS 기본

박성현·2020년 10월 30일
1

스코프, 호이스팅


스코프 : 범위, 유효공간, 허용범위 등을 의미한다.
호이스팅 : 변수를 끌어올린다.

함수스코프

  • 함수에 의해서 생기는 범위 : var

블락스코프

  • 블락에 의해서 생기는 범위 : const, let


호이스팅
1)변수를 끌어올린다.
2)undefined 를 할당한다.
3)함수스코프에서 이루어진다.
4)함수선언문에서는 이루어지지만 함수표현식은 이루어지지않는다.

  • 선언문은 항시 자바스크립트 엔진 구동시 가장 최우선으로 해석하므로 호이스팅 되고, 할당 구문은 런타임 과정에서 이루어지기 때문에 호이스팅 되지 않는다.

함수스코프인 var 는 끌어올려진후 undefined 를 뿜어낸다.
블락스코프인 const 는 에러를 뿜고있다. 하지만 호이스팅이 되어진것은 아니다. 블락스코프에서도 호이스팅은 이루어지지만 undefined 를 할당시키지 않는것이다.


제가 공부한 내용을 간략히 정리하여 TIL 목적으로 게시하는것 입니다.
틀린 정보가 있을시 언제든 알려주시면 감사하겠습니다.

profile
FrontEnd Developer

0개의 댓글