Frontend Develop/JavaScript

[JavaScript] var hoisting

효니킴 2024. 1. 17. 00:23

대부분의 프로그래밍 언어에서는 변수를 선언하고 값을 할당

그렇지만 JavsScript var 변수는 선언하기도 전에 값을 할당하고, 값을 할당하기도 전에 출력이 가능 (undefined)

 

hoisting "끌어올려주다" 는 뜻으로

 

변수를 어디에서 선언 했는지 상관없이 제일 위로 선언을 끌어 올려주는 것.

 

또한, Block Scope를 무시함. 블록 스코프에 선언된 변수를 글로벌 console.log() 로 아무 곳에서나 값이 출력.

=> 이러한 문제를 해결하기 위해 ECMA Script 6에서 let 변수가 탄생✨