Prompt user to Input Numbers in Array and then Sum it using JavaScript

…衆ロ難τιáo~ 提交于 2021-01-29 10:53:43

问题


This works fine if I sum numbers in JavaScript in an Array. But when I ask their input from User then they are printed as if the numbers are in string. Kindly help me in finding the flaw in my code.

var tArr = [];

for(var f = 1;f<=4;f++)                                                           
{   
    // tArr.push(f);  
    var z = prompt("Enter numbers for Sum");   
    tArr.push(z);                              

}   
var r = parseInt(tArr);   
alert(tArr);       

var summ = 0;      
for(var w = 0; w< tArr.length; w++)     
{   
    summ += tArr[w];   
}   
console.log(summ);

回答1:


To convert all values to number just do +tArr[w] then sum it. The +tArr[w] will coerce each value into a number instead of a string and hence will sum it instead of concatenating it.

var tArr = [];

for(var f = 1;f<=4;f++)                                                           
{   
    // tArr.push(f);
    var z = prompt("Enter numbers for Sum");   
    tArr.push(z);                              

}   
//var r = parseInt(tArr); This line is not doing anything.
alert(tArr);       

var summ = 0;      
for(var w = 0; w< tArr.length; w++)     
{   
    summ += +tArr[w];   
}   
console.log(summ);



回答2:


var sum=0;
var len=(Number(prompt("Enter len of array")));
var ar=new Array();

for(var i=0;i<len;i++){
  ar.push(Number(prompt("Enter array elements:"+ar[i])));
}
for(var i=0;i<len;i++){
  sum+=ar[i];
}

document.write(sum+" ");


来源:https://stackoverflow.com/questions/52011567/prompt-user-to-input-numbers-in-array-and-then-sum-it-using-javascript

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!