JavaScript 모듈을 사용하면 개발자는 코드를 재사용 및 유지 관리가 가능한 조각으로 나눌 수 있습니다. 모듈은 코드를 캡슐화하고 이를 다른 파일과 애플리케이션의 일부 간에 공유하는 방법을 제공합니다.
모듈은 코드(예: 변수, 함수, 클래스)를 내보내고 다른 모듈에서 코드를 가져올 수 있는 JavaScript 파일입니다.
JavaScript는 ES6(ES2015)에서 기본 모듈 지원을 도입했습니다. 이는 이제 최신 브라우저와 Node.js에서 널리 지원됩니다.
내보내기를 사용하여 코드를 내보낼 수 있습니다.
// 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}!`); }
가져오기를 사용하여 코드를 가져올 수 있습니다.
import { add, subtract } from './math.js'; console.log(add(5, 3)); // 8 console.log(subtract(5, 3)); // 2
import greet from './greet.js'; greet('Alice'); // Hello, Alice!
import { add as addition } from './math.js'; console.log(addition(5, 3)); // 8
import * as MathOperations from './math.js'; console.log(MathOperations.add(5, 3)); // 8 console.log(MathOperations.subtract(5, 3)); // 2
동적 가져오기를 사용하면 모듈을 필요할 때만 느리게 로드할 수 있습니다. 이렇게 하면 성능이 향상될 수 있습니다.
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();
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}!`); }
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 |
모듈 작업 시 Webpack, Rollup 또는 Parcel과 같은 번들러를 사용하여 모듈을 단일 파일로 패키징하여 배포할 수 있습니다.
import { add, subtract } from './math.js'; console.log(add(5, 3)); // 8 console.log(subtract(5, 3)); // 2
import greet from './greet.js'; greet('Alice'); // Hello, Alice!
그룹 관련 코드:
순환 종속성 방지:
가능한 경우 지연 로드:
JavaScript 모듈은 확장 가능하고 유지 관리가 가능하며 효율적인 애플리케이션을 만드는 데 필수적입니다.
안녕하세요. 저는 Abhay Singh Kathayat입니다!
저는 프론트엔드와 백엔드 기술 모두에 대한 전문 지식을 갖춘 풀스택 개발자입니다. 저는 효율적이고 확장 가능하며 사용자 친화적인 애플리케이션을 구축하기 위해 다양한 프로그래밍 언어와 프레임워크를 사용하여 작업합니다.
제 비즈니스 이메일(kaashshorts28@gmail.com)로 언제든지 연락주세요.
위 내용은 JavaScript 모듈 이해: 코드 내보내기 및 가져오기가 쉬워졌습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!