Как я могу создать переменную, которая используется в двух или более отдельных функциях, без необходимости объявлять ее глобально? Я использую NodeJS для записи.

-1
Dark Lotus 13 Ноя 2018 в 23:20

1 ответ

Лучший ответ

Если все функции в одном файле

Просто объявите его за пределами функций, и он будет доступен внутри:

const myVar = 'hello';

function firstFunc() {
  console.log(myVar);
}

function secondFunc() {
  console.log(myVar);
}

/* and so on ... */

Если эти функции существуют в нескольких файлах

Создайте модуль для доступа к этой переменной и потребуйте его в нужных вам файлах. Предостережение заключается в том, что вы не сможете изменить переменную в одном файле и отразить это изменение в другом. Единственный способ, которым я знаю, как это сделать, - использовать глобальные переменные.

./myModule.js

module.exports = 'hello';

./firstFile.js

const myVar = require('./myModule');

function firstFunc() {
  console.log(myVar);
}

./secondFile.js

const myVar = require('./myModule');

function secondFunc() {
  console.log(myVar);
}

Надеюсь, это ответит на ваш вопрос. Ваше здоровье

0
dpopp07 13 Ноя 2018 в 20:37