게임 개발/자바스크립트 & 타입스크립트

[typeScript]-01.let과 var의 차이

Heesuk Lee 2018. 10. 15. 00:30
var와 let의 차이

typescript로 넘어오면서 let을 주로사용하게되었는데 기존의 var와의 차이를 살펴보려고 합니다.


1. var 



var는 함수 스코프이다. var로 선언한 변수는 동일한 이름으로 재선언이 가능하며, 

함수의 파라미터로써의 var도 선언된 시점의 함수 스코프를 갖습니다.


그렇기때문에 아래와 같은 for문에서 파라미터로 사용된 var변수는 반복문함수가 끝나도 i가 유지가 되어있는것을 확인할 수 있습니다.







2. let



let은 var와의 차이점이 있다면 같은 이름의 변수를 재선언할 수 없으며, 블록 스코프를 갖는다. 또한 선언 전에 참조할 수 없다. 


그렇기때문에 반복문함수의 파라미터로써의 let은 반복문이라는 블록이 끝나면 함께 사라지기 때문에 

아래와 같이 변수 밑에 빨간줄이 생성된것을 확인 할수있습니다.




이러한 let의 존재는 기존의 함수스코프였던 var의 고질적인 불편한 점들을 많이 해결해줬습니다.

반응형