javascript hoisting

    [Javascript] 호이스팅(Hoisting)이란?

    호이스팅(Hoisting)이란? - 함수 안에 있는 선언을 모두 끌어올려서 해당 함수 유효 범위의 최상단에 선언하는 것을 의미한다 - 자바스크립트 함수는 실행되기 전에 함수 안에 선언된 변수값을 모아서 최상단에 선언한다. - 따라서 변수를 어느 위치에 선언하든지 함수의 가장 위로 끌어올려져서 실행된다. 실행순서: 1. 자바스크립트 Parser가 함수 실행 저 해당 함수를 한 번 훑는다 2. 함수 안에 존재하는 변수/함수선언에 대한 정보를 기억하고 있다가 먼저 실행시킨다. 주의사항: - 유효범위: 함수블록 {}안에서 유효 - 실제로 코드가 끌어올려지는 건 아니며, 자바스크립트 Parser 내부적으로 끌어올려서 처리한다. - 실제 메모리에서는 변화가 없다. 호이스팅 대상 var 로 선언된 변수와 함수선언문만..