次のようにtest2.jsを設定するとします。
module.exports.doPrint = doPrint;
var dummy = "initial";
function doPrint(callback) {
setInterval(function() {
console.log(dummy);
callback();
}, 1000);
}
それから私はtest1.jsを持っています
var test2 = require("./test2");
test2.doPrint(function() {
console.log("changing");
test2.dummy = "new value";
});
test1.jsを実行すると、次のようになります
initial
changing
initial
changing
つまり、test2.jsのdummyの値が新しい値に変更されることはありません。誰かがここで何が起こっているのか説明できますか?