两个变量使用Node.js中的require(参考问题)引用相同的config.js文件

问题描述 投票:0回答:1

你好,我在Node.js中有这种情况

// config.js
module.exports = {
    dataUrlTest: "http://www.google.com",
};

#!/usr/bin/env node
//main.js

var config = require("./config.js");
var editConfigFile = require("./config.js");

console.log();
console.log(config["dataUrlTest"]); // output: http://www.google.com
console.log(editConfigFile["dataUrlTest"]); // output: http://www.google.com

editConfigFile["dataUrlTest"] = "test";

console.log();
console.log(config["dataUrlTest"]); // output: test
console.log(editConfigFile["dataUrlTest"]); // output: test

当我运行“ node main.js”时,输出如下:

http://www.google.com
http://www.google.com

test
test

据我从Node.js的require函数了解,它传递了文件的引用,而不是将文件复制到变量中!

我的问题是,有没有办法得到文件的副本而不是得到文件的引用?

我想在不影响config变量的情况下将editConfigFile更改为值,>

有这样的东西吗,我对此进行了研究,没有找到解决方案,有什么想法吗?我将不胜感激。

您好,我在Node.js // config.js module.exports = {dataUrlTest:“ http://www.google.com”,}中有这种情况; #!/ usr / bin / env节点//main.js var config = require(“ ./ config.js”); var ...

javascript node.js pass-by-reference require pass-by-value
1个回答
1
投票

由于要导入对象,因此会获得参考。 require函数基本上导入导出的对象(即module.exports)。

© www.soinside.com 2019 - 2024. All rights reserved.