如何在javascript

时间:2017-06-01 12:03:00

标签: javascript increment

我正在尝试开发一款迷你浏览器无限点击器闲置游戏。

我的问题是我试图每隔一秒自动递增一个变量,只有当某个条件为真时才会这样。

这是我的代码:

    var income = 0;
    var a = 0;

    function buttonOne(){
    document.getElementById
    ("myElementName").innerHTML = " some text " + a++;
     }

现在我遇到的问题是,只有当变量a的值大于1时,我才希望变量收益自动增加。

我尝试了以下内容:

    If( a >= 1 ){
    Window.setInterval(
    document.getElementById
   ("elementThatIChose").innerHTML = " some text " + 
     income++;
     },1000);

现在,当我使用上面的代码时,它没有做任何事情,它会对buttonOne的onclick函数产生负面影响。

有人知道在变量a是某个值后如何使变量收入自动增加。我已经尝试了所有其他循环,但没有任何工作。

2 个答案:

答案 0 :(得分:1)

你必须在内部增加回调:

window.setInterval(function() {
    if( a >= 1 ){
        document.getElementById("elementThatIChose").innerHTML = " some text " + (income++);
    }
},1000);

答案 1 :(得分:0)

您可以使用括号括起来的prefix increment,例如

var income = 0;
var a = 0;

function buttonOne() {
    document.getElementById("myElementName").innerHTML = " some text " + (++a);
}

window.setInterval(function() {
    if (a > 0)
      document.getElementById("elementThatIChose").innerHTML = " some text " + (++income);
}, 1000)

但是通过在分配表达式之外增加变量来更容易阅读代码

function buttonOne() {
    a++;
    document.getElementById("myElementName").innerHTML = " some text " + a;
}

window.setInterval(function() {
    if (a > 0) {
      income++;
      document.getElementById("elementThatIChose").innerHTML = " some text " + income;
  }
}, 1000)