Scope란, 우리가 작성하는 코드의 접근 범위를 결정하는 개념입니다.
어떤 함수로도 둘러싸여 있지 않은 가장 최상위 Scope를 Global Scope라고 부른다. 그리고 그 하위엔 함수 생성을 기준으로 Scope가 형성된다.
Hoisting 자바스크립트에서 우리가 사용하는 모든 변수 선언문은 스코프 내에서 최상위로 Hoisitng 된다 (사전적의미) 들어올리다, 승강장치 당연히 콘솔의 출력값은 1 위의 코드를 실행했을때 에러가 아니라 콘솔에 나타나는 출력 결과는 undefined이 나타나게 된다. 이유는 Hoistiong 현상으로 인해 함수의 구동 흐름이 바뀌었기 때문이다...
변수는 선언에 의해 생성되고 할당을 통해 값을 갖는다. 그리고 가비지 컬랙터에 의해 언젠가 소멸된다.