Глобальные функции и переменные на Node JS

В Node JS все переменные и функции помещенные в объект global становятся доступными во всех подгружаемых модулях.

Пример:

Файл greeting.js

let current_date = new Date()
 
global.date = current_date
 
module.exports.getMessage = function() {
    let hour = current_date.getHours()
	
    if (hour > 16)
        return 'Добрый вечер, ' + name
    else if (hour > 10)
        return 'Добрый день, ' + name
    else
        return 'Доброе утро, ' + name
}

global.printName = function () {
	console.log(name)
}

Файл app.js

const greeting = require('./greeting')
 
global.name = 'Eugene'
 
global.console.log(date)

console.log(greeting.getMessage())

printName()

В результате запуска app.js выведет следующее:

2022-04-15T13:41:25.271Z
Добрый день, Eugene
Eugene

Для поиска:
глобальный объект