본문 바로가기

나의 FE피봇이야기/Javascript

[var / let]

아래에 자세한 설명 있음

https://life-explorer.tistory.com/248

 

[argument] var / let / const

Call Stack - excute context가 call stack에 쌓인다. 1) 최초로 생기는 excute context는 전역에서 접근할 수 있는 excute context라하여 => Global excute context 2) a function위해서 만들어진 것 => function excute context 브라우

life-explorer.tistory.com

 

 

let은 block scope

블록으로 설정 된 곳에서만 사용 가능 예) if, while, for, function { }

 

function b( ) {

  var a = 1;

}

console.log(a) => a is not defined

왜냐하면 함수 밖으로 빠져나오면 console.log(a)는 접근 불가.

varable은 function() 즉 함수 밖에서만 접근 불가 나머지 블록은 접근 가능

 

반면, let은 그냥 블록 밖에서는 ㄷ ㅏ 안됨.

if (true) {

  let a = 1

}

console.log(a)

console.log(a) => a is not defined.

왜냐하면 { } 밖에서 console.log( )를 했으니까