首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在JavaScript中声明全局变量

如何在JavaScript中声明全局变量
EN

Stack Overflow用户
提问于 2010-07-28 18:38:09
回答 3查看 317K关注 0票数 140

如何在JavaScript中声明全局变量?

EN

回答 3

Stack Overflow用户

发布于 2010-07-28 19:00:45

如果这是您要使用此变量的唯一应用程序,那么Felix's approach是非常好的选择。但是,如果您正在编写jQuery插件,请考虑“命名空间”(稍后将详细介绍引号...)jQuery对象下需要的变量和函数。例如,我目前正在开发一个名为miniMenu的jQuery弹出菜单。因此,我在jQuery下定义了一个“名称空间”miniMenu,并将所有内容都放在那里。

我在讨论JavaScript名称空间时使用引号的原因是,它们并不是通常意义上的名称空间。相反,我只需使用一个JavaScript对象,并将我所有的函数和变量作为该对象的属性。

此外,为了方便起见,我通常会将插件名称空间划分为i名称空间,用于只在插件内部使用的内容,以便对插件用户隐藏它。

它是这样工作的:

代码语言:javascript
复制
// An object to define utility functions and global variables on:
$.miniMenu = new Object();
// An object to define internal stuff for the plugin:
$.miniMenu.i = new Object();

现在,当我需要全局保存某些内容时,我可以只执行$.miniMenu.i.globalVar = 3$.miniMenu.i.parseSomeStuff = function(...) {...},并且我仍然将其放在全局名称空间之外。

票数 52
EN

Stack Overflow用户

发布于 2010-07-28 19:39:41

下面是一个全局变量的基本示例,您的其余函数都可以访问它。这是一个活生生的例子:http://jsfiddle.net/fxCE9/

代码语言:javascript
复制
var myVariable = 'Hello';
alert('value: ' + myVariable);
myFunction1();
alert('value: ' + myVariable);
myFunction2();
alert('value: ' + myVariable);


function myFunction1() {
    myVariable = 'Hello 1';
}

function myFunction2() {
    myVariable = 'Hello 2';
}

如果您在jQuery ready()函数中执行此操作,请确保您的变量与其他函数一起位于ready()函数中。

票数 15
EN

Stack Overflow用户

发布于 2015-03-03 21:23:18

在函数外部声明变量

代码语言:javascript
复制
function dosomething(){
  var i = 0; // Can only be used inside function
}

var i = '';
function dosomething(){
  i = 0; // Can be used inside and outside the function
}
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3352020

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档