2013-07-27 136 views
1

我对此代码有问题...如何减去函数内部的变量全局变量并获取它?函数中的变量范围

var liczba = 0 
function create(data) 
{ 
    liczba-- 
} 

if(e.keyCode == 32) 
{ 
    liczba++ 

    if(liczba<5) 
    { 
    create(liczba) 
    } 
} 

当我尝试降低可变liczba有它的价值没有改变

请帮我

+0

你调试它,看看是否该语句被打?或者放置日志('减少')和日志('增加')。你的语法也不正确,你需要;在每一行的末尾,你应该检查你的JavaScript错误,在Chrome上按Ctrl + Shift + j – MrFox

+0

如果你发布的所有东西都被封装在事件回调中,那么每次按下回车键,'liczba'就会被重置为0. – Ken

+0

@Adacho是您的下面的解决方案吗? –

回答

0

对于我们的假设(JSBin

最好是通过得到按键onkeypress

HTM大号

<input type='text' onkeypress='return enterKeyPress(event);' /> 

而且CSS可能是

var liczba = 0; 
function enterKeyPress(e){ 
    alert("In if.."+liczba); 
    if(e.keyCode == 32){ 
     liczba = liczba + 1; 
     alert("In if.."+liczba); 
     if(liczba<5){ 
      create(); 
     } 
    } else { 
     create(); 
    } 
} 
function create(){ 
    alert("In function.."+liczba); 
    liczba = liczba - 1; 
} 
+0

@Adacho是否适合您? –

+0

不幸的是:/我不需要它特殊的例子,但一般如何改变局部函数的全局变量,然后得到它:) – Adacho