하얀 코딩

[JavaScript - 26] 모듈(module) - 개념 본문

JavaScript

[JavaScript - 26] 모듈(module) - 개념

whitecoding 2023. 8. 24. 16:51

자바스크립트에서의 모듈은 코드의 재사용성을 높이고, 

유지 보수성을 향상시키기 위해 관련 있는 함수, 객체, 클래스 등의 코드 덩어리를 하나의 단위로 묶은 것을 말합니다.

모듈 시스템의 도입 이전에는 자바스크립트에서 코드의 모든 부분이 전역 범위에 있었기 때문에 

변수 이름이 겹치는 등의 문제가 발생할 수 있었습니다. 

모듈은 이러한 문제점을 해결하기 위해 도입되었고, 코드의 구조를 개선하며 

개발자들이 더 큰 규모의 애플리케이션을 구축할 수 있게 해줍니다.

자바스크립트의 모듈은 주요 특징 및 이점이 있습니다.

 

  1. 모듈은 하나의 파일입니다. 브라우저에서 import ,export 지시자를 사용하려면 <script type="module"> 같은 속성이 필요합니다. 모듈은 아래와 같은 특징을 지닙니다.
  2. 모듈은 자신만의 스코프를 갖습니다. 모듈 간 기능 공유는 importexport로 할 수 있습니다.
  3. 항상 엄격 모드로 실행(use strict)됩니다.
  4. 모듈 내 코드는 단 한 번만 실행됩니다. 
  5. 모듈을 내보내면 이 모듈을 가져오기 하는 모듈 모두가 내보내진 모듈을 공유합니다.

모듈 내 함수나 객체 등은 export 키워드로 내보낼 수 있습니다. 

이렇게 내보내진 기능은 import 키워드를 사용해 가져와 사용할 수 있습니다. 

브라우저는 자동으로 스크립트를 불러오고 평가합니다.
실제 애플리케이션을 출시할 땐 성능 개선 등의 이점 때문에 웹팩과 같은 번들러를 사용합니다.

 

보다 더 디테일한 정보와 설명은 아래 링크 참조 하시면 됩니다!

https://ko.javascript.info/modules-intro

 

모듈 소개

 

ko.javascript.info