Objeto global e Variáveis Globais - Node.js
Node.js fornece um objeto especial chamado global
window
Vamos ver um exemplo. Criaremos o seguinte módulo, greeting.js
const currentDate = new Date();
global.date = currentDate;
module.exports.printMessage = function() {
const hour = currentDate.getHours();
if (hour >= 18) {
console.log("Boa noite,", global.username);
} else if (hour >= 12) {
console.log("Boa tarde,", username);
} else {
console.log("Bom dia,", username);
}
}
Aqui, primeiramente definimos a variável global date
global.date = currentDate
Em seguida, acessamos a variável global username
username
global
global.username
username
Agora vamos definir o seguinte arquivo de aplicação, app.js
const greeting = require("./greeting");
global.username = "Programício;
global.console.log(date);
greeting.printMessage();
Neste arquivo, definimos a variável global username
greeting.js
date
console
global.console.log()
console.log()
Vamos executar o arquivo app.js
c:\app> node app.js 2023-11-21T17:32:19.063Z Boa tarde, Programício
No entanto, sempre que possível, é recomendado evitar a definição e o uso de variáveis globais, preferindo criar variáveis encapsuladas dentro de módulos individuais.