All'alba vincerò

At dawn, I will win!

Javascript

[JS] ECMAScript Modules: 자바스크립트 모듈화

나디아 Nadia 2024. 7. 24. 16:04

📌 ECMAScript Modules (ESM)

: JavaScript에서 모듈화를 지원하는 공식 표준

  • 모듈 정의 및 가져오기
    • export: 모듈에서 내보내고자 하는 코드를 정의
    • import: 다른 모듈에서 정의된 것들을 가져와 사용
  • 정적 분석
    • ESM은 정적으로 분석될 수 있어, 컴파일러나 번들러가 모듈의 의존성을 미리 파악하고 최적화할 수 있다.
  • 자동적 모듈화
    • 모듈은 기본적으로 엄격 모드(strict mode)로 동작 👉 코드의 안전성과 신뢰성을 높인다.
  • utils 폴더에 아래 유틸리티 함수를 각 파일에 작성하고, 내보내기 구문을 설정
    utils/
    ├── index.js

    ├── numberWithComma.js
    ├── removeSpaceHTMLString.js
    └── shuffle.js

 

 

✨ 모듈화

: 코드를 여러 파일로 나누어 관리하고 재사용할 수 있게 해주는 기법

 

 

모듈 예제 깃허브

 


 

 

 

JavaScript modules - JavaScript | MDN

이 가이드는 JavaScript 모듈 구문을 시작하는데 필요한 모든 것을 제공합니다.

developer.mozilla.org

 

 

CommonJS와 ESM에 모두 대응하는 라이브러리 개발하기: exports field

Node.js에는 두 가지 Module System이 존재합니다. 토스 프론트엔드 챕터에서 운영하는 100개가 넘는 라이브러리들은 그것에 어떻게 대응하고 있을까요?

toss.tech

 

 

export - JavaScript | MDN

export 문은 JavaScript 모듈에서 함수, 객체, 원시 값을 내보낼 때 사용합니다. 내보낸 값은 다른 프로그램에서 import 문으로 가져가 사용할 수 있습니다.

developer.mozilla.org

 

 

import - JavaScript | MDN

정적 import 문은 다른 모듈에서 내보낸 바인딩을 가져올 때 사용합니다.

developer.mozilla.org