Les modules JavaScript permettent aux développeurs de diviser le code en morceaux réutilisables et maintenables. Les modules encapsulent le code et fournissent un moyen de le partager entre différents fichiers et parties d'une application.
Un module est un fichier JavaScript qui exporte du code (par exemple, des variables, des fonctions, des classes) et peut importer du code à partir d'autres modules.
JavaScript a introduit la prise en charge native des modules dans ES6 (ES2015). Ceux-ci sont désormais largement pris en charge par les navigateurs modernes et Node.js.
Vous pouvez exporter du code en utilisant l'exportation.
// 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}!`); }
Vous pouvez importer du code en utilisant import.
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
Les importations dynamiques permettent de charger les modules paresseusement, c'est-à-dire uniquement en cas de besoin. Cela peut améliorer les performances.
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 utilise traditionnellement le système de modules CommonJS. Il utilise require pour importer des modules et module.exports pour les exporter.
// 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 |
Lorsque vous travaillez avec des modules, des bundlers tels que Webpack, Rollup ou Parcel peuvent regrouper vos modules dans un seul fichier pour le déploiement.
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!
Code associé au groupe :
Évitez les dépendances circulaires :
Chargement paresseux lorsque cela est possible :
Les modules JavaScript sont essentiels pour créer des applications évolutives, maintenables et efficaces.
Bonjour, je m'appelle Abhay Singh Kathayat !
Je suis un développeur full-stack avec une expertise dans les technologies front-end et back-end. Je travaille avec une variété de langages et de frameworks de programmation pour créer des applications efficaces, évolutives et conviviales.
N'hésitez pas à me contacter à mon e-mail professionnel : kaashshorts28@gmail.com.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!