DeepDiveJS Chapter 14. 전역 변수의 문제점
[14장. 전역 변수의 문제점]
</br>
✏️ 오해를 줄이려면, 문맥이 구체적이어야한다.
앞서 말했듯, 단어가 사용되는 범위가 넓으면 오해가 생기기 쉽다.
전역변수도 이와 같다. 전역변수는 전역변수의 네임스페이스를 오염시킬 수 있으며, 자바스크립트는 기본적으로 전체 스크립트가 전역 스코프를 공유하기 때문에 이로 인해 여러 문제가 발생할 수 있다.
또한, 전역변수는 생명주기가 길기 때문에 메모리 적인 부분으로도 비효율적이며 스코프 체인상 종점에 있기 때문에 검색 속도에서도 비효율적이다.
사용할 수 있다면, 최대한 지역 변수를 사용하는 것이 좋다.
</br>
✏️ 이외 전역변수의 단점을 보완하는 방법
- 즉시 실행 함수를 사용
- 즉시 실행 함수는 한 번만 호출된다. 라이브러리 등에 자주 사용된다.
- 네임스페이스 객체 사용
- 네임스페이스 객체를 사용, 변수가 혼용되지 않도록 함.
- 모듈 패턴
- 클로저를 기반으로 정보 은닉
- ES6 모듈
- script type에 module을 사용해서 모듈 스코프를 사용