问题标签 [global-variables]
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.
asp-classic - 如何在经典 ASP 中将变量设为静态(或“全局”)?
我想让我的变量静态或“全局” - 所以与.NET中的静态效果相同;每个访问它的会话都会得到相同的结果,如果一个会话修改它,它也会影响其他所有人。
如何在经典 ASP 中实现这一点?
c# - 如何在 WPF 中保存全局应用程序变量?
在 WPF 中,在一个 UserControl 中我可以在哪里保存一个值,然后在另一个 UserControl中再次访问该值,类似于 Web 编程中的会话状态,例如:
UserControl1.xaml.cs:
UserControl2.xaml.cs:
回答:
谢谢,鲍勃,这是我根据你的代码开始工作的代码:
要保存变量:
读取变量:
global-variables - 全局变量的问题
我对 OOP 编程有点陌生,所以我很可能犯了一些愚蠢的错误。这是我的问题。运行我的代码时,出现以下错误:
致命错误:在第30行的/application/libraries/Session.php 中的非对象上调用成员函数 checkLogin()
下面是 Session.php 文件(我已经注释了第 30 行以便于查找):
在我尝试解决问题时,我将 echo gettype($auth) 放在包含和类声明之间。结果输出是“对象”。然后我尝试在 startSession 函数中声明全局 $auth 后立即放置 echo gettype($auth) 。结果输出为“NULL”。知道我的问题可能是什么吗?谢谢。
编辑: $auth 在 Authentication.php 中声明
python - 为什么分配给我的全局变量在 Python 中不起作用?
我在尝试理解 python 范围规则时遇到了可怕的麻烦。
使用以下脚本:
给出了意想不到的(对我而言)输出:
我希望最后一次打印 a 的值是 42,而不是 7。关于 Python 的全局变量范围规则,我缺少什么?
c# - 什么时候使用静态变量?
我目前正在用 C# 做一个带有大量渲染的项目,并且在几乎所有的类中,都有一个整数类型的常量值用于缩放渲染。我知道我可以在一个地方将此常量定义为普通变量,然后将其传递出去,但这似乎很麻烦。什么时候可以在 C# 中使用静态变量?解决我的问题的最简单方法是创建一个包含所有其他类都可以引用的静态变量的类——这会是糟糕的设计吗?
javascript - 如何在 .js 文件中声明全局变量
我需要一些在所有.js
文件中都需要的全局变量。
例如,考虑以下 4 个文件:
global.js
js1.js
js2.js
js3.js
考虑到我将上述所有 4 个文件加载到 HTML 文档中,有没有办法可以在其中声明 3 个全局变量global.js
并在其他 3 个文件中访问它们?.js
有人可以告诉我这是否可能,或者是否有解决方法来实现这一目标?
c# - 库中的 IoC 与全局变量
假设我的类型在构造函数中带有一些参数,如下所示:
现在 IComObject 是两个不同 COM 对象的包装器。我的所有(90%)类型都必须使用 IComObject,所以以良好的 DI 方式(以允许测试)我将 IComObject 传递给每个需要它的类型。
主要问题是,当有人使用我的 COM 包装库时,必须将 IComObject 的实例传递给他们所做的一切,这使得代码有点难以管理和维护。
我想知道是否应该使用用户可以设置的 IoC 容器或全局变量,这样他们就不必传递 IComOject 实例。例子:
或者
这样用户就可以这样做:
或者
你觉得在这种情况下我应该怎么做?
design-patterns - 跨多个服务器/应用程序共享全局变量
我希望为跨多个 Web 服务器、服务器应用程序甚至可能是内部桌面工具的设置设置一个中央控制点。
目前的情况是,我在每个网络服务器或每个应用程序中都有一个设置文件,其中定义了全局变量:管理员电子邮件、上传文件的存储位置等。一些设置(例如用于发送错误报告的全局管理员电子邮件)是几乎全公司。其他设置可能是特定于客户端或站点的。
我还希望这个中央数据库能够密切关注访问每个设置的人员/内容。例如,假设我有一个“ProcessedImageUploadFolder”设置,其值为“\\ImageServer\cache\”,由 5 个不同的网站使用,但我想更改此设置,但查看我的中央系统,我看到还有我没想到的第 6 台服务器也一直在请求此设置(调用应用程序需要识别自己以获取设置,以便数据库可以记录它),以防万一更改第 6 台服务器的此设置会有一个副作用。
在使用服务推出和记录设置的服务推出我自己的数据库之前,我想知道是否有任何库/应用程序已经处理了这样的事情。如果已经完成了这样的事情,有没有人有任何想法?这种类型的系统叫什么?
最好的解决方案是 C#/SQL,但如果唯一的选择是 php 或 Java,我可能会使用它作为基础并移植它。
还是我对这一切都错了?
编辑: 这不是多租户。一些将使用此服务的应用程序已经在多租户设置中。其他是一次性应用程序......其他是在本地网络或 VPN 上使用的桌面应用程序。
如果有人可以更好地标记这个问题,请成为我的客人。
php - 混合 Zend 和旧程序代码
我们有一个非常古老的遗留代码库,它使用全局变量,就像它们已经过时一样——几乎所有的页面间通信都是通过全局变量和会话或两者来完成的。这可以作为最后的手段进行更改,但理想情况下我不想触摸它,因为我触摸的所有东西都可能引入更多错误:-p。
无论如何,我们正在将一个新的“模块”合并到完全用 zend 编写的应用程序中,它非常好且模块化。我的目标是让zend作为主干运行,旧的遗留代码作为zend中的一种模块/控制器运行,一旦它获得控制权,就可以正常执行并做任何它想做的事情。
我有两个问题:
我需要让 Zend 看到我正在使用旧 URL(login.php、show.php 等)并将执行传递给特定的控制器;
我将整个应用程序嵌入到另一个函数中,这破坏了作为全局变量出现在全局范围中的变量的默认行为 - 即它们现在只是此方法的局部变量,因此如果不先指定就无法看到他们是全球性的。
如果有另一种方法可以做到这一点,我会很高兴听到它:-p
干杯,
克里斯
javascript - 重构越来越多的 javascript/jquery 函数的好方法是什么?
我正在做一个项目,我们在一个 mvc 风格的项目上做了很多自定义 javascript,尤其是 jquery。
唯一的问题是我不断添加越来越多的全局函数/变量并且它们正在堆积。我有一些文件,但我不确定如何将一些东西拆分成单独的文件。
我考虑过将其中一些函数和全局变量组合成对象,但是 javascript 中的对象语法对我来说似乎有点尴尬(因为没有经典类)。虽然如果我有一个很好的榜样可以效仿,也许我可以转过来。
您如何处理全局 javascript 函数和变量开始像这样堆积的项目?