Objeto module


É um objeto da biblioteca CommonJS.

A partir dele é possível obter várias informações sobre o módulo:

  • id
  • path
  • exports
  • filename
  • loaded
  • children
  • paths

Exports nomeados

Sintaxe

module.exports.[chave] = [propriedade]
exports.[chave] = [propriedade]
this.[chave] = [propriedade]

Exemplos

const nome = "Luiz";
const sobrenome = "Miranda";
 
const falarNome = () => {
  console.log(nome, sobrenome);
};
 
module.exports.nome = nome;
module.exports.sobrenome = sobrenome;
module.exports.falarNome = falarNome;
 
console.log(module.exports);
 
/*
{
  nome: 'Luiz',
  sobrenome: 'Miranda',
  falarNome: [Function: falarNome]
}
*/
const nome = "Luiz";
const sobrenome = "Miranda";
 
const falarNome = () => {
  console.log(nome, sobrenome);
};
 
exports.nome = nome;
exports.sobrenome = sobrenome;
exports.falarNome = falarNome;
 
console.log(module.exports);
 
/*
{
  nome: 'Luiz',
  sobrenome: 'Miranda',
  falarNome: [Function: falarNome]
}
*/
const nome = "Luiz";
const sobrenome = "Miranda";
 
const falarNome = () => {
  console.log(nome, sobrenome);
};
 
this.nome = nome;
this.sobrenome = sobrenome;
this.falarNome = falarNome;
 
console.log(module.exports);
 
/*
{
  nome: 'Luiz',
  sobrenome: 'Miranda',
  falarNome: [Function: falarNome]
}
*/

Executar uma função exportada

module.exports = function (x, y) {
  return x * y;
};
 
console.log(module.exports(2, 2)); // 4

Referências