Módulos
Um módulo é um arquivo que exporta funções, objetos ou valores para que outros arquivos os importem. É assim que se organiza o código em peças pequenas e reutilizáveis.
ES Modules (padrão moderno)
// matematica.js
export function somar(a, b) {
return a + b;
}
export const PI = 3.14159;
// app.js
import { somar, PI } from "./matematica.js";
console.log(somar(2, 3), PI);
Também existe a exportação padrão (default export):
// saudacao.js
export default function (nome) {
return `Olá, ${nome}`;
}
// app.js
import saudacao from "./saudacao.js";
CommonJS (estilo Node clássico)
Antes dos ES Modules, o Node usava require e module.exports:
// matematica.js
function somar(a, b) { return a + b; }
module.exports = { somar };
// app.js
const { somar } = require("./matematica.js");
Hoje recomenda-se usar ES Modules (
import/export), que são o padrão tanto no navegador quanto no Node moderno.
Exemplos
Um 'módulo' como objeto exportado
const matematica = {
somar: (a, b) => a + b,
subtrair: (a, b) => a - b,
};
console.log(matematica.somar(10, 5));
console.log(matematica.subtrair(10, 5));