js공부를 하면서 for문의 var로 선언했을때와 let의 차이점이 발견되었다.

본 예제는 간단히 for내부에 이벤트 하나만 넣어서 체크하는 정도였는데.

 

궁금해서 이것저것 조금씩 추가하다보니 이렇게 만들어 졌다.

 

이벤트의 경우 script가 모두 실행 된 후 실행되게 되는데 

 

var의 스코프가 함수 전체 이기 때문에 for문이 종료된 시점의 값 3을 가지고 이벤트에 찍히게 된다.

 

이에 반에 let의 경우 구글링을 통해 자료를 통합해 보니 이벤트 실행전 let의 값에대해서 0,1,2가 끝나고

새로 let i = 0 ; let i =1 이런식으로 피파괴적으로 새로운 공간에 할당하여 만들어진다.

 

+ Recent posts