💡 호이스팅(Hoisting)
함수 선언부가 유효범위 최상단으로 끌어올려지는 현상
const a = 7
double()
const double = function () {
console.log(a * 2)
}
javascript는 기본적으로 위에서 아래로 해석하면서 읽혀진다.
해서 위처럼 함수표현을 사용해 double()을 선언하면 에러가 나며 작동이 되지 않는다.

const a = 7
double()
function double() {
console.log(a * 2)
}
하지만 함수선언을 사용하면 상단에 사용한 double()이 잘 작동한다.

이게 바로 호이스팅이다.
함수의 선언부가 호출하는 부분보다 밑에 작성되어 있어도 호이스팅 현상에 의해 문제 없이 실행이 가능해진다!