📍호이스팅(Hoisting)이란? 호이스팅이란 스코프 안에 존재하는 모든 선언들을 해당 스코프의 최상단으로 끌어 올리는 것을 말합니다. 'Hoisting' 단어를 검색해 보면 그 뜻도 '끌어 올리기, 들어 올려 나르기'로 나오듯 호이스팅은 무언가를 끌어 올리는 행위입니다. 자바스크립트 함수는 실행되기 전에 함수 안에 필요한 변수 값들을 모두 모아서 유효 범위의 최상단에 선언합니다. 즉, 함수 내에서 아래 쪽에 존재하는 내용 중 필요한 겂들을 끌어 올리는 것입니다. 모든 선언은 (fuction, var, let, const, class) 호이스팅 됩니다. var는 선언과 동시에 초기화가 이루어져서 undefined로 할당 되지만, let 및 const 선언은 선언만 될 뿐, 메모리 할당이 아직 되지 않은 ..