Avatar ·

Wozu braucht man module.exports in Node.js und wie verwendet man es richtig?

Hallo zusammen! Ich habe gerade angefangen, Node.js zu lernen und verstehe nicht, was module.exports ist und wozu es dient. Ich habe die Dokumentation gelesen, bin aber trotzdem verwirrt.\n\nAngenommen, ich habe eine Datei `math.js`, in der ich einfache Funktionen für Addition und Multiplikation schreibe:\n\n```javascript\nfunction add(a, b) {\n return a + b;\n}\n\nfunction multiply(a, b) {\n return a * b;\n}\n```\n\nUnd in einer anderen Datei `app.js` möchte ich diese Funktionen verwenden:\n\n```javascript\nconsole.log(add(2, 3)); // Fehler: add is not defined\n```\n\nAber ich bekomme einen Fehler. Ich verstehe, dass ich die Funktionen irgendwie "exportieren" muss, aber ich verstehe den Unterschied zwischen `module.exports` und `exports` nicht, und warum man nicht einfach globale Variablen verwenden kann.\n\nAußerdem habe ich gesehen, dass manche `module.exports = { ... }` schreiben, während andere `exports.function`