Let1 var 와 let, const 의 호이스팅 차이 자바스크립트의 변수에는 호이스팅이란 개념이 있다 컴파일 시 따로 변수를 저장해서 저장해두고, 실행 시 함수 내에서 변수가 아래나 중간에 있어도 저장한 걸 꺼내와 변수가 함수의 최상단에서 이미 선언된 것처럼 사용되는 것을 말한다 문제는 선언만 암시적으로 올라가고 할당은 그대로 제 위치에서 작동한다는 것이다 ++ 충격적이게도 for문의 조건문에서 선언한 변수 i 마저도 호이스팅 되어서 for문이 끝나도 변수 i 가 남게된다! console.log(x); // var 변수가 호이스팅에 의해 최상위로 선언만! 되어서 undefined 가 뜬다 var x = 3; 호이스팅의 개념이 없는 다른 언어의 경우, 변수 선언 전에 호출을 하면 컴파일 시 레퍼런스 에러가 뜨지만, 아주 개념 충만하신 자바스크립트님은 아래에 .. 2022. 8. 5. 이전 1 다음