728x90
🗣️ "호이스팅이 뭔지 설명하세요"
네 호이스팅에 대해 설명드리겠습니다.
호이스팅은 자바스크립트 엔진이 코드를 실행하기 전에, 변수와 함수의 선언부를 스코프의 맨 위로 끌어올리는 것처럼 동작하는 특성을 말합니다. 이게 실제로 코드가 변경되는 것은 아니고, 컴파일 단계에서 메모리에 저장되는 방식입니다.
제가 이해한 바로는 호이스팅이 중요한 이유가 코드의 실행 흐름을 예측하는데 영향을 주기 때문입니다.
특히 var로 선언한 변수에서 이 특성이 두드러지게 나타납니다.
예를 들어 console.log로 변수 x를 출력한다고 작성하고 다음 줄에 var키워드로 변수 x를 선언하면 에러가 날 것 같지만 undefined가 출력됩니다. var x부분만 코드의 최상단으로 끌어올려져서 작동되기 때문입니다.
개인적으로 호이스팅을 이해하여 코드를 작성하는 것은 중요하다고 생각하지만, 실제 코딩을 할때에는 호이스팅을 신경쓰기보다는 가독성을 위해 선언을 먼저하고 사용하는 방식을 선호합니다.
728x90
'프론트엔드 개발자로 취업준비 > 기술 면접' 카테고리의 다른 글
🗣️ "개발자에게 가장 중요한 능력, 역량은 무엇이라고 생각하세요?" (0) | 2024.07.31 |
---|---|
🗣️ "웹 브라우저가 웹 페이지를 렌더링 하는 과정을 설명해보세요" (0) | 2024.07.31 |
🗣️ "var, let, const의 차이가 무엇인가요?" (0) | 2024.07.27 |
🗣️ "스크립트 태그 속성 중에 async vs defer 차이가 뭐에요?" (0) | 2024.07.27 |
🗣️개발자 면접 준비합니다. (0) | 2024.07.27 |