[javascript] var를 사용하는 이유와 그 한계점

JavaScript에서 var 키워드는 변수를 선언하는 데 사용됩니다. var를 사용하면 다음과 같은 이점이 있습니다:

  1. 함수 스코프: var로 선언된 변수는 함수 스코프를 가지므로 함수 내에서만 접근 가능합니다.
  2. 호이스팅: var로 정의된 변수는 호이스팅되어 함수 또는 전역 스코프의 상단으로 올려집니다.
  3. 재할당 및 재선언: var로 선언된 변수는 재할당 및 재선언이 가능합니다.

var의 한계점

그러나 var는 몇 가지 한계가 있습니다:

  1. 블록 스코프 부재: var로 선언된 변수는 블록 스코프를 가지지 않습니다. 이는 예상치 못한 결과를 초래할 수 있습니다.
  2. 최상위 선언 처리: var로 선언된 변수는 최상위 스코프로 끌어올려져 이를 전역 변수로 만들 수 있습니다.
  3. 클로저 문제: var를 사용하면 클로저 문제가 발생할 수 있습니다. 이로 인해 예기치 못한 동작이 발생할 수 있습니다.

이러한 이유로 ES6에서는 letconst 키워드가 도입되었고, 이를 통해 var의 결점을 보완하고 있습니다.

자료 출처:

  1. https://www.w3schools.com/js/js_hoisting.asp
  2. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/var