Language | Basic/JavaScript

[JavaScript 스터디] 전역 변수

주정용 2021. 1. 24. 22:32
728x90

변수의 생명주기

  • var 지역 변수의 생명주기는 함수의 생명주기와 일치함
  • 변수의 생명주기는 메모리 공간 확보시점 ~ 가용 메모리 풀로 반환되는 시점
  • 호이스팅은 스코프 단위로 작동함
  • 전역 변수의 생명주기는 코드의 마지막 문이 끝날 때까지
  • var 전역 변수의 생명주기는 전역 객체의 생명주기와 동일함

전역 변수의 문제점

  • 암묵적 결합
  • 긴 생명주기
  • 소코프 체인에서 제일 마지막에 탐색 --> 상대적으로 검색 속도가 느림
  • 네임스페이스 오염 --> 파일이 분리되어 있어도 전역 스코프를 공유함

전역 변수 사용 억제하기

  • 모든 코드를 즉시 실행 함수로 감싸기
  • 네임스페이스로 사용할 객체 활용
  • 모듈 패턴
  • ES6 모듈 사용 --> 파일 자체 독자적인 모듈 스코프 제공

학습 도서

  • '모던 자바스크립트 Deep Dive', 이웅모 저, 위키북스

http://www.kyobobook.co.kr/product/detailViewKor.laf?mallGb=KOR&ejkGb=KOR&linkClass=3314&barcode=9791158392239