Como da para perceber a única coisa que muda é o jeito que chamamos as coisas que exportamos, o module.exports
basicamente transforma isso:
var modulo1 = require('./modulo1');
Nisto:
var modulo1 = function(a, b){
return a + b;
};
Enquanto o exports.qualquercoisa
, transforma isso:
var modulo2 = require('./modulo2');
Nisto:
var modulo2 = {
dividir : function(a, b){
return a / b;
},
multiplicar : function(a, b){
return a / b;
};
};
Também podemos ver que não tem nada relacionado com globais pois precisamos usar o require
dentro de cada arquivo que queremos executar as funções exportadas.
Fantastica explicação, simples e objetiva.