[남이 알려주는 es6] 1-1.왜 var는 안되는가
1. 함수 레벨 스코프.
전역변수를 남발할 가능성이 크다.
function foo(){
if(true){
var a = 0;
}
console.log(a);/// 0 출력
}
2. var 키워드 생략 허용
이는 암묵적 전역변수를 남발할 가능성이 크다.
a = 0;
console.log(a);/// 0 출력
3. 변수 중복 선언 허용
변수를 중복선언함으로서 변수값의 변경이 일어날 가능성이 크다.
var a;
var a;/// 정상작동한다.
var의 문제의 대부분은 전역변수와 엮인다.
물론 전역변수는 간단한 프로젝트의 경우 유용할 수 있지만, 함수 레벨 스코프이기 때문에 언제 GC가 동작하는지 몰라, 메모리 누수가 일어날 수 있고, 비순수함수에 의해서 의도치 않게 변형될 수 있다.
Author And Source
이 문제에 관하여([남이 알려주는 es6] 1-1.왜 var는 안되는가), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@ghwns6717/남이-알려주는-es6-var저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)