如何从for循环中对数组值求和

时间:2017-02-22 14:40:39

标签: javascript loops while-loop sum

如何从for循环中求和结果?我循环遍历循环10次,我想将它们加在一起。

我的输出目前看起来像这样:

4 8 16 32 64 128 256 512 1024 2048

我想完全添加它们



function przelicznik(){
    var first= parseFloat(document.getElementById("pierwszy").value); 
    var second= parseFloat(document.getElementById("drugi").value);
    var text="";

    for(var i=0;i<10;i++)
    {

        var a=first + second;  // 4=2+2    // 8=6+2 
        var b=first + a;       // 6=4+2    // 14=6+8
        first = b              // first=4  // first=8

        //result of 10 times loop put into 'var text'.
        text +=  a ;
    }
    document.getElementById("wynik").innerHTML=text;
}
&#13;
<input type="number" id="pierwszy">
<input type="number" id="drugi">
<input type="submit" value="przelicz" onclick="przelicznik()">


<div id="wynik"></div>
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:0)

对我而言,有一件事就是你附加了你的文本变量,但是你用第一个变量来结束你的逻辑......你不想要

text += first;

作为你for循环中的最后一行?如果你的值是整数,我也建议使用parseInt而不是parseFloat。

答案 1 :(得分:0)

如果我已正确理解您,您希望接受用户的2个号码,然后将计算的输出相加10次并将其添加回页面。

希望以下内容能帮到你。

&#13;
&#13;
function przelicznik(){
  var first= parseFloat(document.getElementById("pierwszy").value); 
  var second= parseFloat(document.getElementById("drugi").value);
  var arr=[];
  for(var i = 0; i < 10; i++){
      var a=first + second;  // 4=2+2    // 8=6+2 
      var b=first + a;       // 6=4+2    // 14=6+8
      first = b              // first=4  // first=8
    
      //result of 10 times loop put into 'var text'.
      arr.push(a);
  }
  document.getElementById("wynik").innerHTML=arr.reduce((a,b) => a + b);
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<input type="number" id="pierwszy">
<input type="number" id="drugi">
<input type="submit" value="przelicz" onclick="przelicznik()">
<div id="wynik"></div>
&#13;
&#13;
&#13;