Temporal dead zone1 Hoisting과 Temporal Dead Zone (TDZ) JavaScript로 개발을 하거나 JavaScript로 짜여진 코드를 많이 본 사람들은 한번쯤 궁금했을 개념 hoising에 대해 알아보자. Hoising이란 변수나 함수가 선언되기 전에 이를 사용할 수 있는 현상을 말한다. 프로그램이 실행되기 전 JavaScript는 코드를 스캔하여 어떤 변수가 선언되어 있는지 확인하고 각 변수가 variable environment에 미리 생성된다. 이 작업은 각 함수에 대한 실행 컨택스트가 생성되는 단계에서 일어난다. 다음은 변수 및 함수에 따라 hoisting이 어떻게 적용되는지 표를 통해 살펴보자. Hoising과 더불어 초기값과 스코프에 대한 내용도 함께 정리했다. 위 표를 참고하여 다음 코드를 살펴보자. // undefined console.log(lang.. 2020. 11. 16. 이전 1 다음