【问题标题】:Incrementing a number more than once from a variable从变量中多次增加一个数字
【发布时间】:2015-03-31 05:58:10
【问题描述】:

如何将多个值添加到另一个值以使其递增?

例如,每当一个变量获得一个新值时,将该值添加到主总计中,并像计数器一样递增它。因此,如果一个值更改为 4,然后更改为 5,然后更改为 2,则增加的总值将为 11。

是“++”还是“=+”?

我试图通过下面的一个简单示例来让它工作:

单击我以更改我的 HTML 内容 (innerHTML)。
 <script>

 var blue;
 var green = 3;
 var yellow = 3;

 blue =+ green;
 blue =+ yellow;

 document.getElementById("demo").innerHTML=blue;

 </script>

所以我希望蓝色现在的值为 6。

谢谢。

【问题讨论】:

  • 这远不是您唯一需要知道的,但它是+=,而不是=+
  • 而且你必须正确初始化var blue = 0;
  • @Pointy 啊谢谢。我在我的示例中尝试了它并得到了 NaN 但意识到我没有将我的蓝色变量声明为整数,这给了我想要的东西。谢谢。
  • @freakish 是的,后来意识到了谢谢。
  • @jord49 如果你已经解决了这个问题,要么自己添加解决方案作为答案并接受它,要么删除问题。如果能帮助其他人学习,前者更可取。

标签: javascript html variables counter increment


【解决方案1】:

这里我不是很明白。至于您描述的示例,您可以轻松使用+= 来实现。

 <script>

 var blue;
 var green = 3;
 var yellow = 3;

 blue += green;
 blue += yellow;

 document.getElementById("demo").innerHTML=blue;

 </script>

那么这里的蓝色将是 6。

但是从一开始的描述,我猜你的意思是你想要这样的东西:

var blue = 0;
var mainCount = 0;
blue = 3;
blue = 9;
blue = 1;
//Then the mainCount will automatically be 13

如果这是你想要的,你可能需要一些对 javascript 来说有点复杂的东西。你需要编写一个函数来设置蓝色的值,然后你可以在每次设置值时做额外的事情。像这样:

var blue = 0;
var mainCount = 0;
var setBlue = function(value) {blue = value; mainCount += blue;};

setBlue(3); //blue is 3, mainCount is 3
setBlue(9); //blue is 9, mainCount is 12
setBlue(1); //blue is 1, mainCount is 13

希望这会有所帮助。

【讨论】:

    【解决方案2】:

    += 是错误的,应该是 +=。

    需要正确初始化“var blue”,因为它需要是一个整数,因此更正为 var blue = 0;

    非常感谢 cmets。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-08
      • 1970-01-01
      • 2023-04-01
      相关资源
      最近更新 更多