호이스팅 (1) 썸네일형 리스트형 [Javascript] Hoisting이란? 호이스팅이란? 코드 실행 전, 변수/함수선언이 파일의 맨 위로 끌어 올려진 "것 같은 현상"을 이야기한다. Hoisting이 발생하는 이유 자바스크립트 엔진 동작의 특징 때문! 코드를 실행하기 전 실행 가능한 코드를 형상화하고 구분하는 과정을 거침 (실행 컨텍스트를 위한 과정) 코드를 실행하기 전 실행 컨텍스트를 위한 과정에서 모든 선언들(var, let, const, function, class)을 메모리에 저장. 코드 실행 전 이미 변수/함수 선언이 메모리에 저장되어 있기 때문에 선언문보다 참조/호출이 먼저 나와도 오류 없이 동작. (정확히는 var 키워드로 선언한 변수와 함수 선언문일 경우 오류 없이 동작.) 따라서 이는 선언이 파일의 맨 위로 끌어올려진 것 처럼 보이게 한다. *실행 컨텍스트는 실.. 이전 1 다음