짬짬이기록하기

var, let 차이점 본문

Web Development/Javascript

var, let 차이점

짬짬이기록하기 2020. 7. 31. 14:56
반응형

var는 function scope, 재선언 가능, 재할당 가능

let은 block scope, 재선언 불가능, 재할당 가능 

function fn() {
  var a = 1;
  let b = 2;
  console.log(a); // 1출력
  console.log(b); // 2출력
  //함수를 벗어나면 a,b둘다 메모리에서 해제됨
}
fn();

console.log(a); // ReferenceError발생
console.log(b); // ReferenceError발생

if(true) {
  var a2 = 1;
  let b2 = 2;
  console.log(a2); // 1출력
  console.log(b2); // 2출력
}

console.log(a2); // 1출력
console.log(b2); // ReferenceError발생
//a2는 function-scoped이기 때문에 function내부에 선언된게 아닐 경우 전역 변수로 hoisting됨
//b2는 block-scoped이기 때문에 if를 벗어나면 메모리에서 해제됨

 

반응형

'Web Development > Javascript' 카테고리의 다른 글

custom tag 만들기  (0) 2023.04.07
동기,비동기 기본 개념  (0) 2022.09.04
event.stopPropagation  (0) 2020.07.30
selector 정리  (0) 2020.07.30
유용한 jQuery Flipster Infinite Loop  (0) 2020.06.16