问题标签 [globals]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 在文件之间使用全局变量?
我对全局变量的工作方式有点困惑。我有一个大项目,大约有 50 个文件,我需要为所有这些文件定义全局变量。
我所做的是在我的项目main.py
文件中定义它们,如下所示:
我正在尝试使用myList
in subfile.py
,如下所示
我尝试了另一种方法,但也没有用
在里面subfile.py
我有这个:
但同样,它没有用。我应该如何实现这个?我知道它不能那样工作,当这两个文件并不真正了解对方(以及子文件不知道主文件),但我想不出如何做到这一点,而不使用 io 写入或泡菜,哪个我不想做。
python - 在模块之间共享资源的良好做法?
我正在重新组织我的代码,因此创建了新的命名空间。我正在为模块更改“静态”类(每个方法中带有 @staticmethod 的类)。这是要走的路,对吧?
问题是我对如何在这些模块之间共享资源有疑问。
假设我有一个模块,我从中进行所有与数据库的连接,当然所有类/方法都共享存储 DB 游标的变量(我正在使用 SQLite)。现在,在不同的模块中,它们也必须共享光标。
所以,我的想法:
在每个模块中声明全局变量。但是全球人是邪恶的,吃掉孩子,偷走我们的工作。所以我不知道这是否是要走的路。
/li>使用原始 database_cursor 导入“父亲”database_module 并使用如下内容:
/li>
在这种情况下,第二个看起来不错,但我认为在很多情况下会导致递归导入,我想这是应该避免的。
custom-component - 寻找 flexglobals.toplevelapplication 的反面
如果我想从自定义组件引用顶级应用程序中的 textInput(例如)。比我可以使用 FlexGlobals.toplevelapplication 但我如何在顶级应用程序的自定义组件中引用 textInput。所以我需要与 FlexGlobals.toplevelapplication 相反。
javascript - JavaScript 全局设计模式
可能重复: 如何避免 JavaScript 中的全局变量?
我正在寻找一些关于如何最好地在 JavaScript 中管理全局变量的建议。
考虑以下:
在这两种情况下,我们的函数都在内部访问全局变量,这让我觉得很难看。根据我的阅读,我们希望尽可能避免使用全局变量,以避免阻塞全局名称空间。
那么为我们的全局变量创建一个我们所需要的结构吗?
例如,
我想这解决了全局命名空间冲突问题,但我仍然从我的方法中访问全局范围。
我应该怎么办?
c# - 如何在 C# 库中创建全局对象
我有一个 C# 库。
- 库可以有全局对象/变量吗?
- 运行主项目时,是否可以从库中自动执行这些对象的初始化方法,还是必须将其设为静态方法并从主项目运行?
lua - 如何将函数推入 Lua 中的 _G(全局空间)
TLDR;我的函数不能从 _G 范围调用,我希望它们可以通过解析字符串列表来调用函数。package.seeall
框架要求的a 可能会加剧这种情况。
我在 luci 框架中工作,它是 OpenWRT 路由器的 UCI 前端。为了创建在解析特定 UCI 值时调用的自定义函数,我创建了共享返回值名称的函数,这些函数通过 _G 调用。
解析后的数据如下所示:
我的代码如下所示:
返回给我的错误是attempt to call field '?' (a nil value)
当我直接将字符串“值”传递给它时,pageValues.modules['value']=_G['value']()
我收到attempt to call field 'value' (a nil value)
的时候是创建一个虚拟变量
我收到attempt to call field '?' (a nil value)
。如果我使用,这是一样的local dummy = 'value'
当我解析_G
以查看我的任何函数是否在其中时,我发现它们不是。注意Luci 会自动调用package.seeall
,我不知道这是否与我的全局调用有关。但是,回答这个问题可能很重要。
我最迫切的需要是让这个功能正常运行。我的次要兴趣是如何确定 Lua 中的范围,以便将来能够解决 LuCI 中的沙盒问题。
python - Python 全局列表
我正在学习 python,并且遇到了全局变量/列表的问题。我正在编写一个基本的河内手动塔程序,这是目前的程序:
我尝试了一些变体,但每次我收到错误“NameError:未定义全局名称'pillar1'”。
在此设置中处理全局列表的最佳方法是什么?如果可能的话,我宁愿只使用一个源文件。谢谢!
php - PHP $_GLOBALS -> 取回值?
假设我有一个在启动时执行类似操作的代码:
这显然可以getAndWriteToGlobals
正常工作,它只做很少的事情并将另一个数据放入$_GLOBALS['something'][$ee] = $value ->
其中正常工作(我打印了整个$_GLOBALS['something']
),print_r
并且一切都在那里。
我遇到的问题是当程序从这个函数返回时,我尝试在另一个变量中获取数组,像这样
在这种情况下, $var 在 printup 中不包含任何内容(甚至不包含 null),count($var)
返回0
. 我在这里想念什么?
谢谢!
编辑:
php - HTTP 全局 PHP 变量
有没有办法获取对包含 HTTP 请求数据(如 get、post、cookie 等)的全局数组的引用?例如:
其中 getRequestReference() 将返回 &$_GET, &$_POST...,具体取决于用户用于在脚本中提交数据的请求类型。
php - 有没有办法在 PHP 中捕获未定义的全局变量,并提供一个值,如自动加载,但用于变量?
我们有很多现有的代码,而不是创建一个类的实例,或者在该类上使用静态函数,而是在该类的全局单例上调用该方法。
例如(stringclass.php):
然后它将以下列方式使用它:
我意识到这不是一种非常明智的调用函数的方式,但我想知道我们是否可以修复所有人们忘记使用自动加载器包含正确类的地方,而无需更改使用这些单例的所有代码. 它将检测未声明的全局变量的使用,并根据被引用的全局变量的名称包含正确的类文件。