JS에서는 변수 선언을 let, var로 할 수 있는데 더 이상 var은 쓰지 않는게 권장됩니다. 이유가 무엇일까요?
우선 var는 아래와 같은 코드가 에러없이 작동하게 됩니다.
1
2
3
|
num = 10;
var num;
console.log(num)
|
cs |
선언을 하기전에 10이란 값을 할당했지만 num에는 10이란 값이 잘 들어갑니다.
이렇게 선언의 위치에 상관없이 선언한 부분을 제일 위로 올려서 인식하는 것을 hoisting이라고 합니다.
또한, var는 block을 무시합니다.
1
2
3
4
5
|
{
var num;
num = 10;
}
console.log(num)
|
cs |
위 코드를 보면 block 안에 존재하는 num변수를 block밖에서도 사용할 수 있습니다.
'javascript' 카테고리의 다른 글
자바스크립트 fetch와 axios (0) | 2021.05.15 |
---|---|
자바스크립트 this binding (0) | 2021.05.13 |
자바스크립트 ... 이용하기 (0) | 2021.05.12 |
자바스크립트 싱글스레드와 Event Loop (0) | 2021.05.08 |
html파일안에서 script tag의 위치 (0) | 2021.05.03 |