> 웹 프론트엔드 > JS 튜토리얼 > JavaScript 모듈 이해: 코드 내보내기 및 가져오기가 쉬워졌습니다.

JavaScript 모듈 이해: 코드 내보내기 및 가져오기가 쉬워졌습니다.

Patricia Arquette
풀어 주다: 2024-12-18 19:15:16
원래의
380명이 탐색했습니다.

Understanding JavaScript Modules: Exporting and Importing Code Made Easy

자바스크립트 모듈

JavaScript 모듈을 사용하면 개발자는 코드를 재사용 및 유지 관리가 가능한 조각으로 나눌 수 있습니다. 모듈은 코드를 캡슐화하고 이를 다른 파일과 애플리케이션의 일부 간에 공유하는 방법을 제공합니다.


1. JavaScript 모듈이란 무엇입니까?

모듈은 코드(예: 변수, 함수, 클래스)를 내보내고 다른 모듈에서 코드를 가져올 수 있는 JavaScript 파일입니다.

주요 특징:

  • 캡슐화: 전역 네임스페이스 오염을 방지합니다.
  • 재사용성: 코드는 다양한 파일에서 재사용될 수 있습니다.
  • 유지관리성: 대규모 프로젝트를 더 쉽게 관리하고 디버그할 수 있습니다.

2. ES6 모듈(ECMAScript 모듈)

JavaScript는 ES6(ES2015)에서 기본 모듈 지원을 도입했습니다. 이는 이제 최신 브라우저와 Node.js에서 널리 지원됩니다.

코드 내보내기

내보내기를 사용하여 코드를 내보낼 수 있습니다.

  1. 명명된 내보내기:
    • 모듈에서 여러 값을 내보낼 수 있습니다.
   // math.js
   export const add = (a, b) => a + b;
   export const subtract = (a, b) => a - b;
로그인 후 복사
로그인 후 복사
  1. 기본 내보내기:
    • 각 모듈에는 하나의 기본 내보내기가 있을 수 있습니다.
   // greet.js
   export default function greet(name) {
     console.log(`Hello, ${name}!`);
   }
로그인 후 복사
로그인 후 복사

코드 가져오기

가져오기를 사용하여 코드를 가져올 수 있습니다.

  1. 명명된 수입품:
    • 특정 내보내기를 가져오려면 중괄호를 사용하세요.
   import { add, subtract } from './math.js';

   console.log(add(5, 3)); // 8
   console.log(subtract(5, 3)); // 2
로그인 후 복사
로그인 후 복사
  1. 기본 가져오기:
    • 기본 내보내기에는 중괄호가 필요하지 않습니다.
   import greet from './greet.js';

   greet('Alice'); // Hello, Alice!
로그인 후 복사
로그인 후 복사
  1. 가져오기 이름 바꾸기:
    • 가져오기 이름을 바꾸려면 as를 사용하세요.
   import { add as addition } from './math.js';

   console.log(addition(5, 3)); // 8
로그인 후 복사
  1. 모든 항목 가져오기:
    • 모든 내보내기를 개체로 가져오려면 *를 사용하세요.
   import * as MathOperations from './math.js';

   console.log(MathOperations.add(5, 3)); // 8
   console.log(MathOperations.subtract(5, 3)); // 2
로그인 후 복사

3. 동적 가져오기

동적 가져오기를 사용하면 모듈을 필요할 때만 느리게 로드할 수 있습니다. 이렇게 하면 성능이 향상될 수 있습니다.

예:

import('./math.js').then((MathOperations) => {
  console.log(MathOperations.add(5, 3)); // 8
});
로그인 후 복사

비동기/대기 사용:

async function loadModule() {
  const MathOperations = await import('./math.js');
  console.log(MathOperations.add(5, 3)); // 8
}
loadModule();
로그인 후 복사

4. CommonJS 모듈(Node.js)

Node.js는 전통적으로 CommonJS 모듈 시스템을 사용합니다. 모듈을 가져오려면 require를 사용하고 모듈을 내보내려면 module.exports를 사용합니다.

예:

  • 내보내는 중:
   // math.js
   export const add = (a, b) => a + b;
   export const subtract = (a, b) => a - b;
로그인 후 복사
로그인 후 복사
  • 가져오는 중:
   // greet.js
   export default function greet(name) {
     console.log(`Hello, ${name}!`);
   }
로그인 후 복사
로그인 후 복사

5. ES6과 CommonJS 모듈의 차이점

Feature ES6 Modules CommonJS
Syntax import/export require/module.exports
Loading Static Dynamic
Use Case Modern JavaScript (Browsers, Node.js) Primarily Node.js
Default Export Supported Not explicitly supported

6. 모듈 번들러

모듈 작업 시 Webpack, Rollup 또는 Parcel과 같은 번들러를 사용하여 모듈을 단일 파일로 패키징하여 배포할 수 있습니다.

예:

   import { add, subtract } from './math.js';

   console.log(add(5, 3)); // 8
   console.log(subtract(5, 3)); // 2
로그인 후 복사
로그인 후 복사

7. 모듈 모범 사례

  1. 단일 책임을 위해 기본 내보내기 사용:
    • 모듈의 주요 기능에 대해 기본 내보내기를 사용합니다.
   import greet from './greet.js';

   greet('Alice'); // Hello, Alice!
로그인 후 복사
로그인 후 복사
  1. 그룹 관련 코드:

    • 관련 코드를 동일한 모듈로 정리합니다.
  2. 순환 종속성 방지:

    • 모듈이 루프에서 서로를 가져오지 않도록 하세요.
  3. 가능한 경우 지연 로드:

    • 코드 분할과 성능 향상을 위해 동적 가져오기를 사용하세요.

8. 요약

  • 최신 JavaScript 개발을 위해 ES6 모듈을 사용하세요.
  • 내보내기 및 가져오기를 사용하여 코드를 공유하고 재사용하세요.
  • 효율적인 배포를 위해 모듈 번들러를 활용하세요.
  • Node.js 호환성을 위해 CommonJS를 이해하세요.

JavaScript 모듈은 확장 가능하고 유지 관리가 가능하며 효율적인 애플리케이션을 만드는 데 필수적입니다.

안녕하세요. 저는 Abhay Singh Kathayat입니다!
저는 프론트엔드와 백엔드 기술 모두에 대한 전문 지식을 갖춘 풀스택 개발자입니다. 저는 효율적이고 확장 가능하며 사용자 친화적인 애플리케이션을 구축하기 위해 다양한 프로그래밍 언어와 프레임워크를 사용하여 작업합니다.
제 비즈니스 이메일(kaashshorts28@gmail.com)로 언제든지 연락주세요.

위 내용은 JavaScript 모듈 이해: 코드 내보내기 및 가져오기가 쉬워졌습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:dev.to
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿