TIL
<자바스크립트 Javascript> var 키워드의 단점
낭만인
2022. 1. 10. 22:06
- var 키워드 특징
1) 함수 레벨 스코프
함수의 코드 블록만을 스코프로 인정하기 때문에, 전역 함수 외부에서 생성된 변수는 모두 전역 변수가 되어 전역 변수가 남발될 위험성이 있다. 또한, for 문의 변수 선언문에서 선언한 변수는 for 문의 코드 블록 외부에서 참조가 가능하다.
2) var 키워드의 생략
암묵적 전역 변수를 양산할 수 있다.
3) 변수 중복의 허용
의도하지 않은 변수값의 변경이 일어날 수 있다.
4) 변수 호이스팅
변수 선언 이전에 참조가 가능하다.
위와 같은 특징들이 있지만 가장 큰 위험성은 전역 변수의 사용에 존재한다. 전역 변수는 유효 범위가 넓어 사용 위치와 사용된 이유의 파악이 어렵고, 의도치 않게 변경될 가능성이 있어 복잡성을 증가시키기 때문이다.
ECMA Script 6에서 이러한 단점을 보완하기 위해 let과 const 키워드가 도입되었다.
참고 : poiemaweb 웹사이트