Внутри functions.js
вы будете иметь доступ к global
переменной узла, который подобен window
переменной в браузере. Как предложил Платон в комментарии, вы можете добавить это в глобальное пространство, просто сделав echo = function echo(input){ ... }
. Однако это вызовет ошибку, если вы используете строгий режим, который предназначен для обнаружения распространенных ошибок (например, случайного создания глобальных переменных).
Один из способов безопасного добавления echo
в качестве глобального заключается в том, чтобы добавить его в глобальную переменную global
.
"use strict";
global.echo = function echo(input) {
process.stdout.write(input);
}
Я думаю, что в целом с использованием exports
лучше практика, потому что иначе, как только functions.js
включен (из любого другого файла), вы будете иметь доступ к echo
в каждом файле, и это может быть трудно отследить, где он идет от ,
Для этого вам нужно будет иметь свой functions.js
выглядеть как:
"use strict";
module.exports.echo = function echo(input) {
process.stdout.write(input);
}
Затем в главном скрипте сделать что-то вроде:
"use strict";
var functions = require("./functions.js");
functions.echo("Hello, World");
попробовать 'эхо = функция эхо (вход) { ...} ' – Plato
@Plato: лучше быть явным, выполняя' global.echo = ... '. Присвоение неинициализированных переменных является ошибкой (в строгом режиме) – Bergi