使用For循环进行Javascript计算

时间:2014-04-03 23:06:31

标签: javascript for-loop

我确信这很简单,但解决方法是让我不知所措。我想写一个函数将导致:1000 + 1001 + 1002 + 1003 + 1004(所以我输出5010)

我有一个表单,用户输入一个数字x(在这种情况下为1000),并且它会迭代y的次数(在这种情况下为5)

我知道我需要在var total中每次都存储这个值,但是我还没有得到它。

到目前为止,我有这个:

function baleTotal(){
  var x = document.addBale.strt.value;
  var y = document.addBale.baleNum.value;
  var calc = Number(x);
  total = 0;

  for (var y; y > 0; y--) {
   calc++;
  }              

  document.addBale.result.value = total;
}

4 个答案:

答案 0 :(得分:2)

你实际上并没有增加你的总数。 这将根据基数和迭代次数进行计算并返回结果,而不是直接在DOM上运行。

function baleTotal(base, iterations) {
    var total = 0;
    for (i=0; i<iterations; i++) {
        total += (base + i);
    }
    return total;
}

console.log(baleTotal(1000, 5));

答案 1 :(得分:0)

你没有做任何事情,你也在重新宣布你。试试这个:

function baleTotal(){
  var x = document.addBale.strt.value;
  var y = document.addBale.baleNum.value;
  var calc = Number(x);
  total = 0;

  for (; y > 0; y--) {
   total += calc + y;
  }              

  document.addBale.result.value = total;
}

未经测试但应该有效。

答案 2 :(得分:0)

这或多或少是你的意思吗?

function baleTotal(){
  var x = document.addBale.strt.value;
  var y = document.addBale.baleNum.value;
  total = 0;

  for (var i = 0; i < y; i++) {
   total += x + i;
  }             

  document.addBale.result.value = total;
}

答案 3 :(得分:0)

我认为这就是你要找的东西。

function baleTotal(){
  total = 0;
  for (var i = 0; i < document.addBale.baleNum.value; ++i) {
    total += document.addBale.strt.value + i;
  }
  document.addBale.result.value = total;
}