如何在JavaScript中设置全局变量?

时间:2014-04-12 06:09:33

标签: javascript

每次调用函数时我想增加一个计数器。 但每次调用它时都会设置为0。 如何维护nextKeyIndex的更新值?

我从javascript文件调用getKey函数。 应该返回更新索引(从0到4)的其他javascript文件具有以下代码..

var nextKeyIndex=0;

function getKey() {
   if (nextKeyIndex == 4)
      nextKeyIndex = 0;
   else
      nextKeyIndex = nextKeyIndex + 1;

   alert(nextKeyIndex);

4 个答案:

答案 0 :(得分:1)

我试过你的代码如下,它为我工作。请尝试下面的代码。

<script>
var nextKeyIndex=0;

function getKey() {
   if (nextKeyIndex == 4)
      nextKeyIndex = 0;
   else
      nextKeyIndex = nextKeyIndex + 1;

   alert(nextKeyIndex);
}
</script>

<input type="button" onclick="getKey()" value="click" />

答案 1 :(得分:0)

  

如何在javascript中设置全局变量?

如果您声明没有var的内容或将其声明为window对象

的一部分,则可以设置全局变量
global = 10; // global variable
window.global = 10; // also global variable

答案 2 :(得分:0)

var nextKeyIndex=0;

function getKey() {
   if (nextKeyIndex == 4){
      nextKeyIndex = 0;
   }else{
      nextKeyIndex = nextKeyIndex + 1;
}
   alert(nextKeyIndex);
}

答案 3 :(得分:0)

如果您未在函数中明确声明它们,则javascript中的所有变量都默认为全局变量。你确定第一行声明(var nextKeyIndex = 0)没有在某处重新运行或重新加载吗?

<a href="#" onclick="getKey()">Click Me To Increment</a>

var nextKeyIndex=0;

getKey=function() {
   if (nextKeyIndex == 4)
      nextKeyIndex = 0;
   else
      nextKeyIndex = nextKeyIndex + 1;

   alert(nextKeyIndex);
}

它适用于jsfiddle:

http://jsfiddle.net/WJYx2/