-
[JavaScript] 호이스팅이란?programming/JavaScript&jQuery 2019. 11. 4. 00:00반응형
1. 호이스팅이란?
간단하게 설명하면,
자바스크립트에서 함수 및 변수 선언이 코드 순서상 먼저 일어나지 않아도,
실행할 수 있는 것이다.
예를 들어, 호이스팅을 변수 및 함수 선언이 물리적으로 작성한 코드 상단으로 옮겨지는 것으로 가르치지만, 실제로는 그렇지 않습니다. 변수 및 함수 선언은 컴파일 단계에서 메모리에 저장되지만, 코드에서 입력한 위치와 정확히 일치한 곳에 있습니다.
정확하게 코드가 물리적으로 이동하는 것은 아니라고 한다.
2. 호이스팅의 예
12345678910111213// hoisting1-1hoisting();function hoisting(){alert("hoisting!");}// hoisting1-2function hoisting(){alert("hoisting!");}hoisting();cs hoisting1-1과 hoisting1-2의 차이는 단지 함수 호출의 순서다.
1-1은 함수 호출을 먼저 하고, 함수 작성을 아래에 한 경우이고,
1-2는 함수 작성을 먼저 하고, 함수 호출을 아래에 한 경우이다.
1-1의 경우 컴파일 단계에서, 1-2처럼 함수 선언이 가장 위로 올라가고,
실행은 두 코드가 똑같이 되는 것이다.
참조
반응형'programming > JavaScript&jQuery' 카테고리의 다른 글
[jQuery&html] html 요소 지우기 .remove() (0) 2019.11.06 [JavaScript] 함수 선언식과 표현식 (0) 2019.11.05 [JavaScript] let 그리고 const 사용법 (0) 2019.11.03 [jQuery] each() 사용법 (0) 2019.10.31 [html&jQuery] $.data()로 data-value 속성 사용하기 (0) 2019.10.30