gpt4 book ai didi

javascript - 从模块内的函数更新全局变量

转载 作者:太空宇宙 更新时间:2023-11-04 03:31:12 27 4
gpt4 key购买 nike

我尝试通过创建具有不同功能的不同模块来组织我的项目。但为了有效,我需要这些函数来更新“app.js”文件中的变量。

一旦我运行位于“custom_module.js”文件中的“myFunction”,下面的代码应该更新并记录变量“name”。但我得到的是:

Hello undefined

app.js

var name;
var module = require('./custom_module.js');
module.myFunction();
console.log("Hello " + name);

自定义模块.js

var myFunction = function(){
name = "Test"
}

module.exports.myFunction = myFunction;

有人知道如何解决这个问题吗?

最佳答案

您可以将其附加到全局对象...即 Node 中的 global 和浏览器中的 window

// app.js
window.name = 'Foo';

// custom_module.js
var myFunction = function(){
window.name = "Bar";
}

附注不要这样做。共享全局变量(通常)总是邪恶的。

关于javascript - 从模块内的函数更新全局变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37551574/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com