전역 변수는 코드 어디서든 참조하고 할당하기 위해서 사용한다.
이것은 모든 코드가 전역 변수를 참조하고 변경할 수 있는 암묵적 결합을 허용하게 된다.
변수의 유효 범위가 클수록 가독성이 떨어지고, 의도치 않게 상태가 변경될 수 있다.
전역 변수는 생명 주기가 길다. 생명 주기가 길어지면 메모리 리소스를 오랜 기간 소모하게 되고, 변수를 변경할 시간과 기회가 많아져서 오류를 일으킬 가능성이 높아진다.
전역 변수는 스코프 체인 상 종점에 존재한다. 마지막에 검색되기 때문에 검색 속도가 가장 느리다.
자바스크립트는 파일이 분리되어 있어도 하나의 전역 스코프를 공유한다.
다른 파일 내에 동일한 이름으로 명명된 전역 변수나 전역 함수가 같은 스코프 내에 존재할 경우, 예상치 못한 결과가 발생할 수 있다.
위와 같은 문제들이 있으므로 전역 변수를 반드시 사용해야 할 이유가 없다면 지역 변수를 사용하는 것이 통제하기 좋다.