如何在jQuery中存储全局值(不一定是全局变量)?

目前,我正在使用一个大量的JavaScript,jQuery,Microsoft客户端JavaScript和其他库的旧网页。底线-

我无法从头开始重写整个页面,因为企业无法证明它的合理性。所以…就是这样。无论如何,我需要使用变量来污染(我确实没有尝试过)全局名称空间。我在考虑三个选项-

  1. 只需使用普通的JavaScript声明存储/检索它- var x = 0;

  2. 使用jQuery在DOM标签中存储/获取值- $("body").data("x", 0);

  3. 使用隐藏的表单字段,并使用jQuery设置/获取值- $("whatever").data("x", 0);

有没有更好的办法?我查看了现有的一堆代码,但我不认为变量可以在函数中确定范围。

回答:

您可以在jQuery对象中创建一个名称空间,如下所示:

$.mynamespace = { 

myVar : "something",

myVar2 : "somethingElse"

};

要么:

$.mynamespace = {};

$.mynamespace.myVar = "something";

$.mynamespace.myVar2 = "somethingElse";

请记住,任何名为“ mynamespace”的插件方法都将被覆盖,因此请确保使用明智的名称。

以上是 如何在jQuery中存储全局值(不一定是全局变量)? 的全部内容, 来源链接: utcz.com/qa/434201.html

回到顶部