Node.js est un environnement d'exécution JavaScript côté serveur très populaire, qui peut exécuter du code JavaScript directement sur notre serveur. Dans Node.js, les modules sont une technologie utilisée pour organiser et encapsuler le code.
La méthode d'exportation nous permet d'exposer les pièces que nous voulons d'un module pour les utiliser par d'autres modules. Dans Node.js, les méthodes d'exportation dans les modules ont généralement les méthodes suivantes.
1. module.exports
La méthode d'exportation la plus couramment utilisée est module.exports. En définissant module.exports sur une fonction, un objet, une classe, une constante, etc., nous pouvons l'utiliser dans d'autres modules.
Par exemple, nous avons un module appelé "sum.js" qui définit une fonction qui ajoute deux nombres :
function add(a, b) { return a + b; } module.exports = add;
Dans un autre module, nous pouvons charger et utiliser ce module via la méthode require Fonctions définies :
const sum = require('./sum.js'); console.log(sum(1, 2)); // 输出 3
Nous pouvons exportez également n'importe quel nombre de fonctions, objets, classes, constantes, etc. dans un module via module.exports :
function add(a, b) { return a + b; } function subtract(a, b) { return a - b; } const PI = 3.14; module.exports = { add: add, subtract: subtract, PI: PI };
Dans d'autres modules, nous pouvons charger et utiliser les modules ci-dessus de la manière suivante Contenu exporté :
const { add, subtract, PI } = require('./math.js'); console.log(add(1, 2)); // 输出 3 console.log(subtract(5, 3)); // 输出 2 console.log(PI); // 输出 3.14
2. exports
Une autre méthode d'exportation est l'objet exports. Dans le système de modules Node.js, module.exports et exports sont en fait deux alias pour le même objet. Par conséquent, nous pouvons exporter le contenu du module en modifiant l'objet exports.
Par exemple, nous modifions le module "sum.js" pour exporter la fonction d'ajout via les exports :
exports.add = function(a, b) { return a + b; }
Dans d'autres modules, nous pouvons charger et utiliser le contenu de ce module en :
const sum = require('./sum.js'); console.log(sum.add(1, 2)); // 输出 3
les exports peuvent également être utilisés Exporter des objets, par exemple :
exports.person = { name: '张三', age: 20 };
Dans d'autres modules, nous pouvons charger et utiliser les objets exportés dans ce module de la manière suivante :
const person = require('./person.js'); console.log(person.name); // 输出 张三 console.log(person.age); // 输出 20
Il est à noter que lorsque nous utilisons à la fois des objets exports et un module dans un module .exports, l'objet exports sera ignoré.
3. require
En plus d'exporter du contenu, nous pouvons également introduire du contenu provenant d'autres modules dans le module. Dans Node.js, nous pouvons utiliser la méthode require pour introduire d'autres modules.
Par exemple, nous avons un module appelé "calculator.js" qui dépend du module "sum.js" :
const sum = require('./sum.js'); function multiply(a, b) { let result = 0; for (let i = 0; i < b; i++) { result = sum.add(result, a); } return result; } module.exports = { multiply: multiply };
Dans d'autres modules, nous pouvons charger et utiliser les fonctions exportées dans le module ci-dessus comme suit :
const calculator = require('./calculator.js'); console.log(calculator.multiply(5, 3)); // 输出 15
Il est à noter que lorsque nous introduisons d'autres modules dans un module, nous pouvons utiliser directement le contenu exporté dans le module importé sans utiliser le nom du module pour y accéder.
Résumé
Ce qui précède est la méthode du module d'exportation de Node.js. Bien que les bases soient couvertes ici, la complexité du système de modules Node.js va au-delà. Dans les applications pratiques, nous devons également avoir une compréhension approfondie du mécanisme de chargement du module Node.js, des stratégies d'optimisation et d'autres détails. J'espère que vous pourrez vous inspirer de cet article et avoir une compréhension et une application plus approfondies de la méthode d'exportation du module Node.js.
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!