我试图通过获取值,然后将它们推入数组来捕获表单中的用户输入。然后,我想输出一个警报,但由于某种原因,这些值被串联起来而不是添加了。我的输出也有一个随机零。我应该得到三个值的总和(示例1 + 2 + 3应该给6,而不是0123。请告知谢谢!



function myFunction() {
    var totalArray = [];

    totalArray.push(document.getElementById('votes1').value);
    totalArray.push(document.getElementById('votes2').value);
    totalArray.push(document.getElementById('votes3').value);

    var totalAmount = 0;

    for (var x = 0; x < totalArray.length; x++) {

        totalAmount += totalArray[x];
    }

    alert(totalAmount);
}

myFunction();

<input id="votes1" value="1"/>
<input id="votes2" value="2"/>
<input id="votes3" value="3"/>

最佳答案

您可以在添加它们之前使用parseInt将值转换为整数,如下所示:

totalAmount += parseInt(totalArray[x]);

09-11 17:37