📌 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